ListIconGadget()

Syntax

Ergebnis = ListIconGadget(#Gadget, x, y, Breite, Höhe, Titel$, TitelBreite [, Flags])
Beschreibung
Erstellt ein ListIcon-Gadget innerhalb der aktuellen Gadgetliste.

Wenn #PB_Any als '#Gadget' Parameter verwendet wird, dann wird der Identifier des neuen Gadgets als 'Ergebnis' zurückgegeben. '#Gadget' ist die Nummer, die (später) von der EventGadgetID() Funktion zurückgegeben wird.

'Titel$' ist der Titel der ersten Spalte und 'TitelBreite' seine ursprüngliche Breite. Sobald ein ListIcon erstellt wurde, ist seine Liste mit Einträgen leer.

'Flags' sind immer optional und können sich aus einer oder mehreren der folgenden Konstanten (verknüpft mit dem '|' OR-Operator) zusammensetzen:
  #PB_ListIcon_CheckBoxes          : Zeigt Checkboxen in der ersten Spalte.
  #PB_ListIcon_MultiSelect         : Schaltet die Mehrfach-Selektion ein.
  #PB_ListIcon_GridLines           : Zeigt Separator-Linien zwischen Zeilen und Spalten an.
  #PB_ListIcon_FullRowSelect       : Die Auswahl erfolgt damit über die gesamte Zeile anstelle nur der ersten Spalte.
  #PB_ListIcon_HeaderDragDrop      : Die Reihenfolge der Spalten kann per Drag'n'Drop verändert werden.
  #PB_ListIcon_AlwaysShowSelection : Die Auswahl ist noch sichtbar, auch wenn das Gadget nicht aktiv ist.
Zu diesem Gadget kann mittels GadgetToolTip() eine 'Mini-Hilfe' hinzugefügt werden.

Die folgenden Befehle können zum Zugriff auf den Listeninhalt benutzt werden:

- AddGadgetColumn(): Fügt eine Spalte zum Gadget hinzu.
- AddGadgetItem(): Fügt einen Eintrag (mit optionalem Bild in der 16x16 Standard Icon-Größe) hinzu
- RemoveGadgetItem(): Entfernt einen Eintrag
- ClearGadgetItemList(): Entfernt alle Einträge
- CountGadgetItems(): Ermittelt die Anzahl der aktuellen Einträge im #Gadget.
- GetGadgetItemState(): Ermittelt den aktuellen Status des angegebenen Eintrags.
- SetGadgetItemState(): Ändert den aktuellen Status des angegebenen Eintrags.
- GetGadgetItemText(): Ermittelt den aktuellen Text des angegebenen Eintrags.
- SetGadgetItemText(): Ändert den aktuellen Text des angegebenen Eintrags.
- GetGadgetState(): Gibt den ersten ausgewählten Eintrag zurück, oder -1 wenn kein Eintrag selektiert ist.
- SetGadgetState(): Ändert den ausgewählten Eintrag (alle anderen selektierten Einträge verlieren ihre Markierung). Wird -1 angegeben, dann werden keine Einträge mehr selektiert.

Wenn Sie mittels AddGadgetItem() zu einem ListIcon mit mehreren Spalten Inhalte hinzufügen möchten, verwenden Sie das Format "Erste Spalte"+Chr(10)+"Zweite Spalte" als Text$ Parameter. Siehe hierzu auch das untere Beispiel.

Benutzen Sie ChangeListIconGadgetDisplay(), um den Darstellungsmodus des ListIcons zu verändern, da vier verschiedenen Formen unterstützt werden (große Icons, kleine Icons, Listen und Reports).

Beispiel 1:
 #MyWindow = 0
 #MyGadget = 1
 If OpenWindow(#MyWindow,100,100,300,100,#PB_Window_SystemMenu|#PB_Window_ScreenCentered,"ListIcon Beispiel")
   If CreateGadgetList(WindowID())
     ListIconGadget(#MyGadget,5,5,290,290,"Name",100,#PB_ListIcon_FullRowSelect|#PB_ListIcon_AlwaysShowSelection)
     AddGadgetColumn(#MyGadget,1,"Adresse",250)
     AddGadgetItem(#MyGadget,-1,"Harry Rannit"+Chr(10)+"12 Parliament Way, Battle Street, By the Bay")
     AddGadgetItem(#MyGadget,-1,"Ginger Brokeit"+Chr(10)+"130 PureBasic Road, BigTown, CodeCity")
     Repeat
       EventID = WaitWindowEvent()
     Until EventID = #PB_Event_CloseWindow And EventWindowID() = #MyWindow
   EndIf
 EndIf
Beispiel 2:
  ; Zeigt mögliche Flags des ListIconGadgets in Aktion...
  If OpenWindow(0,0,0,640,300,#PB_Window_SystemMenu|#PB_Window_ScreenCentered,"ListIconGadgets") And CreateGadgetList(WindowID(0))
    ; linke Spalte
    TextGadget    (6, 10, 10, 300, 20, "ListIcon Standard", #PB_Text_Center)
    ListIconGadget(0, 10, 25, 300, 70, "Column 1",100)
    TextGadget    (7, 10,105, 300, 20, "ListIcon with Checkbox", #PB_Text_Center)
    ListIconGadget(1, 10,120, 300, 70, "Column 1",100, #PB_ListIcon_CheckBoxes)  ; ListIcon mit Checkbox
    TextGadget    (8, 10,200, 300, 20, "ListIcon with Multi-Selection", #PB_Text_Center)
    ListIconGadget(2, 10,215, 300, 70, "Column 1",100, #PB_ListIcon_MultiSelect) ; ListIcon mit Mehrfachselektion
    ; rechte Spalte
    TextGadget    (9,330, 10, 300, 20, "ListIcon with separator lines",#PB_Text_Center)
    ListIconGadget(3,330, 25, 300, 70, "Column 1",100, #PB_ListIcon_GridLines)
    TextGadget   (10,330,105, 300, 20, "ListIcon with FullRowSelect and AlwaysShowSelection",#PB_Text_Center)
    ListIconGadget(4,330,120, 300, 70, "Column 1",100, #PB_ListIcon_FullRowSelect|#PB_ListIcon_AlwaysShowSelection)
    TextGadget   (11,330,200, 300, 20, "ListIcon Standard with large icons",#PB_Text_Center)
    ListIconGadget(5,330,220, 300, 65, "",200,#PB_ListIcon_GridLines)
    For a=0 To 4            ; fügt Spalten zu jedem der ersten 5 ListIcons hinzu
      For b=2 To 4          ; fügt 3 weitere Spalten zu jedem ListIcon hinzu
        AddGadgetColumn(a,b,"Column "+Str(b),65)
      Next
      For b=0 To 2          ; fügt 4 Einträge auf jeder Zeile der ListIcons hinzu
        AddGadgetItem(a,b,"Item 1"+Chr(10)+"Item 2"+Chr(10)+"Item 3"+Chr(10)+"Item 4")
      Next
    Next
    ; Hier ändern wir die Anzeige des ListIcons in große Icons und zeigen ein Bild an
    If LoadImage(0,"map2.bmp")     ; ändern Sie Pfad/Dateiname für Ihr eigenes 32x32 Pixel Bild
      ChangeListIconGadgetDisplay(5, 0)
      AddGadgetItem(5,1,"Picture 1",UseImage(0))
      AddGadgetItem(5,2,"Picture 2",UseImage(0))
    EndIf  
    Repeat : Until WaitWindowEvent()=#PB_Event_CloseWindow
  EndIf

Unterstützte OS

Windows, Linux, MacOS X

<- IsGadget() - Gadget Inhaltsverzeichnis - ListViewGadget() ->