Hallo Luckie,
danke für deinen Tip
Ich hab das jetzt mal so gelöst:
Code:
SendMessage(ListView_Dateien.Handle, LVM_ENSUREVISIBLE, Line, 0);
//Line ist die aktuelle Zeile
Wenn also jetzt eine Zeile kommt, die nicht sichtbar ist, dann wird eben um eine Zeile nach oben gescrollt, damit die aktuelle Zeile sichtbar ist.
Nur der letzte Parameter ist mir unklar.
Diesen kann ich auf 1 oder auf 0 setzen, aber er macht immer das gleiche. Was mich jetzt zwar nicht wirklich stört, da er ja immer das Richtige tut, aber interessieren würds mich schon, was dieser Parameter macht.
Hier mal die Microsoft-Erklärung:
Zitat:
Syntax
To send this message, call the SendMessage function as follows.
lResult = SendMessage( // returns LRESULT in lResult (HWND) hWndControl, //
handle to destination control (UINT) LVM_ENSUREVISIBLE, // message ID (WPARAM) wParam, // = (WPARAM) (int) i; (LPARAM) lParam // = (LPARAM) (BOOL) fPartialOK; );
Parameters
i
Index of the list-view item.
fPartialOK
Value specifying whether the item must be entirely visible. If this parameter is TRUE, no scrolling occurs if the item is at least partially visible.
Return Value
Returns TRUE if successful, or FALSE otherwise.
mfg
Helmi