Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. General Programming
  3. C / C++ / MFC
  4. Sorting in list control

Sorting in list control

Scheduled Pinned Locked Moved C / C++ / MFC
c++linuxalgorithmshelpquestion
13 Posts 3 Posters 2 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • N Offline
    N Offline
    Naveen
    wrote on last edited by
    #1

    Hi, I created a shell extension that shows a dialog(MFC). The dialog have a list control and i tried to implement the sort functionality in it. The problem is when I call the ListView_SortItems or ListView_SortItemsEx of the list control, after the first call back returned from my application an exception is coming. Any solution for this? Thanks Naveen

    CPalliniC N 2 Replies Last reply
    0
    • N Naveen

      Hi, I created a shell extension that shows a dialog(MFC). The dialog have a list control and i tried to implement the sort functionality in it. The problem is when I call the ListView_SortItems or ListView_SortItemsEx of the list control, after the first call back returned from my application an exception is coming. Any solution for this? Thanks Naveen

      CPalliniC Offline
      CPalliniC Offline
      CPallini
      wrote on last edited by
      #2

      Maybe posting relevant code will help. :)

      If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler. -- Alfonso the Wise, 13th Century King of Castile.

      In testa che avete, signor di Ceprano?

      N 1 Reply Last reply
      0
      • CPalliniC CPallini

        Maybe posting relevant code will help. :)

        If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler. -- Alfonso the Wise, 13th Century King of Castile.

        N Offline
        N Offline
        Naveen
        wrote on last edited by
        #3

        CPallini wrote:

        Maybe posting relevant code will help.

        thanks. void MainDlg::OnColumnclickList1(NMHDR* pNMHDR, LRESULT* pResult) { ListView_SortItemsEx( m_list.m_hWnd, CompareFunc, (LPARAM)this ); *pResult = 0; } int MainDlg::CompareFunc(LPARAM lParam1, LPARAM lParam2, LPARAM lParamSort) { return 1; }

        nave

        CPalliniC 1 Reply Last reply
        0
        • N Naveen

          CPallini wrote:

          Maybe posting relevant code will help.

          thanks. void MainDlg::OnColumnclickList1(NMHDR* pNMHDR, LRESULT* pResult) { ListView_SortItemsEx( m_list.m_hWnd, CompareFunc, (LPARAM)this ); *pResult = 0; } int MainDlg::CompareFunc(LPARAM lParam1, LPARAM lParam2, LPARAM lParamSort) { return 1; }

          nave

          CPalliniC Offline
          CPalliniC Offline
          CPallini
          wrote on last edited by
          #4

          IMHO there are two strange things in your code (but I don't know how dangerous they are): - Why are you passing this pointer to the comparisono function (though it is perfectly legal) ? - Your comparison function it's wrong: it cannot order a set. I know it it a test function, but try to improve it. :)

          If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler. -- Alfonso the Wise, 13th Century King of Castile.

          In testa che avete, signor di Ceprano?

          N 1 Reply Last reply
          0
          • CPalliniC CPallini

            IMHO there are two strange things in your code (but I don't know how dangerous they are): - Why are you passing this pointer to the comparisono function (though it is perfectly legal) ? - Your comparison function it's wrong: it cannot order a set. I know it it a test function, but try to improve it. :)

            If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler. -- Alfonso the Wise, 13th Century King of Castile.

            N Offline
            N Offline
            Naveen
            wrote on last edited by
            #5

            CPallini wrote:

            Why are you passing this pointer to the comparisono function (though it is perfectly legal) ?

            I removed the this pointer. Still the exception is ocurring( Actaully this code will work fine in simple mfc application. I have even tried this in an ocx )

            CPallini wrote:

            Your comparison function it's wrong: it cannot order a set. I know it it a test function, but try to improve it.

            I know the current code will not do sorting. Just for making the code shorter i have removed the comparision codes.

            nave

            CPalliniC 1 Reply Last reply
            0
            • N Naveen

              CPallini wrote:

              Why are you passing this pointer to the comparisono function (though it is perfectly legal) ?

              I removed the this pointer. Still the exception is ocurring( Actaully this code will work fine in simple mfc application. I have even tried this in an ocx )

              CPallini wrote:

              Your comparison function it's wrong: it cannot order a set. I know it it a test function, but try to improve it.

              I know the current code will not do sorting. Just for making the code shorter i have removed the comparision codes.

              nave

              CPalliniC Offline
              CPalliniC Offline
              CPallini
              wrote on last edited by
              #6

              Naveen R wrote:

              removed the this pointer. Still the exception is ocurring( Actaully this code will work fine in simple mfc application. I have even tried this in an ocx )

              I expected the above behaviour. I was curious about...

              Naveen R wrote:

              I know the current code will not do sorting. Just for making the code shorter i have removed the comparision codes.

              Maybe the bug it is in the not-posted code! :)

              If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler. -- Alfonso the Wise, 13th Century King of Castile.

              In testa che avete, signor di Ceprano?

              N 1 Reply Last reply
              0
              • CPalliniC CPallini

                Naveen R wrote:

                removed the this pointer. Still the exception is ocurring( Actaully this code will work fine in simple mfc application. I have even tried this in an ocx )

                I expected the above behaviour. I was curious about...

                Naveen R wrote:

                I know the current code will not do sorting. Just for making the code shorter i have removed the comparision codes.

                Maybe the bug it is in the not-posted code! :)

                If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler. -- Alfonso the Wise, 13th Century King of Castile.

                N Offline
                N Offline
                Naveen
                wrote on last edited by
                #7

                no no Even the code that I posted causes exception. Simply returning the 1 itself is causing the exception.

                nave

                CPalliniC 1 Reply Last reply
                0
                • N Naveen

                  no no Even the code that I posted causes exception. Simply returning the 1 itself is causing the exception.

                  nave

                  CPalliniC Offline
                  CPalliniC Offline
                  CPallini
                  wrote on last edited by
                  #8

                  IMHO this may happen 'cause you function isn't good for ordering. :)

                  If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler. -- Alfonso the Wise, 13th Century King of Castile.

                  In testa che avete, signor di Ceprano?

                  N 1 Reply Last reply
                  0
                  • N Naveen

                    Hi, I created a shell extension that shows a dialog(MFC). The dialog have a list control and i tried to implement the sort functionality in it. The problem is when I call the ListView_SortItems or ListView_SortItemsEx of the list control, after the first call back returned from my application an exception is coming. Any solution for this? Thanks Naveen

                    N Offline
                    N Offline
                    Nibu babu thomas
                    wrote on last edited by
                    #9

                    Didn't get time to look into your code. Will do soon. :)


                    Nibu thomas A Developer Programming tips[^]  My site[^]

                    N 1 Reply Last reply
                    0
                    • CPalliniC CPallini

                      IMHO this may happen 'cause you function isn't good for ordering. :)

                      If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler. -- Alfonso the Wise, 13th Century King of Castile.

                      N Offline
                      N Offline
                      Naveen
                      wrote on last edited by
                      #10

                      I got the pblm solved. I missed the "CALLBACK" in the function declaration. Thanks anyway

                      nave

                      CPalliniC 1 Reply Last reply
                      0
                      • N Nibu babu thomas

                        Didn't get time to look into your code. Will do soon. :)


                        Nibu thomas A Developer Programming tips[^]  My site[^]

                        N Offline
                        N Offline
                        Naveen
                        wrote on last edited by
                        #11

                        Hi Nibu, pblm solved. The pblm was I didnt put the "CALLBACK" in the function declaration. Thats all. Thanks anyway.

                        nave

                        N 1 Reply Last reply
                        0
                        • N Naveen

                          Hi Nibu, pblm solved. The pblm was I didnt put the "CALLBACK" in the function declaration. Thats all. Thanks anyway.

                          nave

                          N Offline
                          N Offline
                          Nibu babu thomas
                          wrote on last edited by
                          #12

                          Naveen R wrote:

                          The pblm was I didnt put the "CALLBACK" in the function declaration.

                          Hmm Nice fix.


                          Nibu thomas A Developer Programming tips[^]  My site[^]

                          1 Reply Last reply
                          0
                          • N Naveen

                            I got the pblm solved. I missed the "CALLBACK" in the function declaration. Thanks anyway

                            nave

                            CPalliniC Offline
                            CPalliniC Offline
                            CPallini
                            wrote on last edited by
                            #13

                            Good Point! :-D

                            If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler. -- Alfonso the Wise, 13th Century King of Castile.

                            In testa che avete, signor di Ceprano?

                            1 Reply Last reply
                            0
                            Reply
                            • Reply as topic
                            Log in to reply
                            • Oldest to Newest
                            • Newest to Oldest
                            • Most Votes


                            • Login

                            • Don't have an account? Register

                            • Login or register to search.
                            • First post
                              Last post
                            0
                            • Categories
                            • Recent
                            • Tags
                            • Popular
                            • World
                            • Users
                            • Groups