Code: Alles auswählen
; Autor Folker Linstedt
; 2007|08|27
If OpenWindow(0, 100, 100, 400, 400, "ListIcon Example", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
CreateToolBar(0,WindowID(0))
ToolBarStandardButton(1,#PB_ToolBarIcon_Paste)
ToolBarToolTip(0,1,"Fügt Auswahl hinzu")
ToolBarSeparator()
ToolBarStandardButton(2,#PB_ToolBarIcon_Redo,#PB_ToolBar_Toggle)
ToolBarToolTip(0,2,"Markiert automatisch den nächsten")
ToolBarSeparator()
ToolBarStandardButton(3,#PB_ToolBarIcon_Delete)
ToolBarToolTip(0,3,"Hebt Auswahl auf")
If CreateGadgetList(WindowID(0))
ListIconGadget(0, 5, 50, 180, 300, "Name", 100, #PB_ListIcon_FullRowSelect|#PB_ListIcon_AlwaysShowSelection|#PB_ListIcon_MultiSelect|#PB_ListIcon_GridLines)
ListIconGadget(1, 205, 50, 180, 300, "Name", 100, #PB_ListIcon_FullRowSelect|#PB_ListIcon_AlwaysShowSelection|#PB_ListIcon_MultiSelect|#PB_ListIcon_GridLines)
For i=0 to 100
AddGadgetItem(0, -1, RSet(Str(i),8,"0"))
Next
Repeat
Event = WaitWindowEvent()
If Event = #PB_Event_Menu
MenuEvent=EventMenu()
If MenuEvent=1
For i=0 to 100
If GetGadgetItemState(0,i)
AddGadgetItem(1,-1,GetGadgetItemText(0,i,0))
SetGadgetItemColor(0,i,#PB_Gadget_BackColor,RGB(0,255,0),0)
P=i
EndIf
If GetToolBarButtonState(0,2)
; Hebt Auswahl auf
SetGadgetItemState(0,i,0)
EndIf
Next
If GetToolBarButtonState(0,2)
; SetGadgetState(0,-1)
SetGadgetState(0,P+1)
EndIf
EndIf
If MenuEvent=3
SetGadgetState(0,-1)
EndIf
EndIf
Until Event = #PB_Event_CloseWindow
EndIf
EndIf
Markiert auf der linken Seite ein paar Einträge, mit der Umschalt-Taste.
So, dass viele unter einander markiert sind. Probiert das ruhig mal mit und ohne Zwischenräumen.
Folgendes soll möglich sein, wenn man nun auf HINZUFÜGEN klickt, werden die markierten Einträge hinzugefügt. Wählt man "->" soll automatisch der nächste Eintrag gewählt werden.
Von dort möchte ich wieder mit der Umschalt-Taste einige Einträge markieren.
>>>>>> Nun das Problem, scheinbar bleibt die Selektierung
obwohl ich das Gadget auf -1 gesetzt habe und keine Markierung mehr zu sehen ist. Sogar jedes einzelne Item auf NULL gesetzt, damit keine Markierung mehr vorhanden sein kann und dennoch, werden Einträge markiert, die ich nicht markiert haben will, wenn ich gleich Umschalt und Mausklick benutze.
Und fragt bitte, nicht, wieso ich nicht STRG nehme, oder wieso ich nicht zweimal klicken möchte. In der Liste sind später mehr als 100 Einträge und die automatische Weiterschaltung spart einfach unheimlich Zeit.
Doch sobald es sich um mehrere neue ausgewählte Einträge handeln soll, werden auch alte Markierungen wieder markiert, was irgendwie ja nun nicht so schön ist.
Wer weiß, was ich übersehen habe?
Gruß, Folker
