@PureLust: Hier hatte ich das Problem, wie ich eine Message abfange, aber die Boardsuche war mein Freund
Mit folgendem Ergebnis kann man Leben. Es zuckt zwar noch etwas nervös direkt beim scrollen, danach ist aber alles in Ordnung.
Code: Alles auswählen
If OpenWindow(0, 200, 200, 300, 245, "ListIcon-Test", #PB_Window_SystemMenu | #PB_Window_TitleBar)
If CreateGadgetList(WindowID(0))
ListIconGadget(0, 0, 0, 300, 245, "Column0", 80, #PB_ListIcon_CheckBoxes | #PB_ListIcon_GridLines | #PB_ListIcon_FullRowSelect | #PB_ListIcon_AlwaysShowSelection | #PB_ListIcon_MultiSelect)
AddGadgetColumn(0, 1, "Column1", 80)
AddGadgetColumn(0, 2, "Column2", 80)
EndIf
EndIf
For i = 0 To 50
AddGadgetItem(0, -1, "Test " + Str(i) + Chr(10) + "Test " + Str(i) + Chr(10) + "Test " + Str(i))
Next
Global OldProcedure
Procedure CallbackProcedure(hWnd, Message, wParam, lParam)
Select Message
Case #WM_VSCROLL
InvalidateRect_(GadgetID(0), 0, #True)
EndSelect
ProcedureReturn CallWindowProc_(OldProcedure, hWnd, Message, wParam, lParam)
EndProcedure
OldProcedure = SetWindowLong_(GadgetID(0), #GWL_WNDPROC, @CallbackProcedure())
SetActiveGadget(0)
While WaitWindowEvent() <> #PB_Event_CloseWindow : Wend
End
Nochmal danke an alle.
Gruß, BI2