Listview horizontal scroll bar
-
I have a Listview window with 10 columns. Data are display in the column going left to right with the newest data at the right most column. A horizontal scrollbar is automatically displayed at the bottom and the thumb of the scrollbar is at the left side. I want to put the thumb of the scrollbar to the right side so the when you go to that window you see the newest data first. I tried using GetScrollInfo() but I keep on getting "The window does not have scroll bars." from GetLastError(). I tried using SetScrollInfo() and passing in different values for nPos of the SCROLLINFO structure to see if it would move the thumb, but it doesn't seem to work. Does anyone know how you I get the thumb of the scrollbar to be at the right side?
-
I have a Listview window with 10 columns. Data are display in the column going left to right with the newest data at the right most column. A horizontal scrollbar is automatically displayed at the bottom and the thumb of the scrollbar is at the left side. I want to put the thumb of the scrollbar to the right side so the when you go to that window you see the newest data first. I tried using GetScrollInfo() but I keep on getting "The window does not have scroll bars." from GetLastError(). I tried using SetScrollInfo() and passing in different values for nPos of the SCROLLINFO structure to see if it would move the thumb, but it doesn't seem to work. Does anyone know how you I get the thumb of the scrollbar to be at the right side?
Can you use LVM_SCROLL/ListView_Scroll()[^]? Mark
Mark Salsbery Microsoft MVP - Visual C++ :java:
-
Can you use LVM_SCROLL/ListView_Scroll()[^]? Mark
Mark Salsbery Microsoft MVP - Visual C++ :java:
Hi Mark, thanks for the help, ListView_Scroll() solved the problem I asked. Now I have another problem, when I press the left or right arrow on the scrollbar, I don't receive any WM_HSCROLL messages. I need to check when the thumb is at the far right and the right arrow is press I need to check for newer data and when the thumb is at the far left and the left arrow is press to retrieve older data. Any suggestion why I am not receiving any WM_HSCROLL messages?
-
Hi Mark, thanks for the help, ListView_Scroll() solved the problem I asked. Now I have another problem, when I press the left or right arrow on the scrollbar, I don't receive any WM_HSCROLL messages. I need to check when the thumb is at the far right and the right arrow is press I need to check for newer data and when the thumb is at the far left and the left arrow is press to retrieve older data. Any suggestion why I am not receiving any WM_HSCROLL messages?
Same situation - we don't know how the common controls are implemented internally so we can't assume these window messages are available in the standard way. Just like you should be using ListView messages to control the control (:)), you should be looking for ListView notifications (LVN_xxxx) instead of standard window messages. See LVN_BEGINSCROLL/LVN_ENDSCROLL Mark
Mark Salsbery Microsoft MVP - Visual C++ :java:
-
Hi Mark, thanks for the help, ListView_Scroll() solved the problem I asked. Now I have another problem, when I press the left or right arrow on the scrollbar, I don't receive any WM_HSCROLL messages. I need to check when the thumb is at the far right and the right arrow is press I need to check for newer data and when the thumb is at the far left and the left arrow is press to retrieve older data. Any suggestion why I am not receiving any WM_HSCROLL messages?
FYI... I recommend keeping a link to this: Control Library[^] or the equivalent link in your local development MSDN library.
It's the documentation for all the Windows common controls, including messages, notifications, and APIs. Mark
Mark Salsbery Microsoft MVP - Visual C++ :java: