ListIconGadget()
Syntax
Ergebnis = ListIconGadget(#Gadget, x, y, Breite, Hoehe, Titel$, TitelBreite [, Flags])Beschreibung
Erstellt ein ListIcon-Gadget innerhalb der aktuellen Gadgetliste.
Wenn #PB_Any als '#Gadget' Parameter verwendet wird, dann wird die Nummer des neuen Gadgets als 'Ergebnis' zurückgegeben. '#Gadget' ist die Nummer, die (später) von der EventGadget() 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. (nicht unterstützt auf Mac OSX) #PB_ListIcon_FullRowSelect : Die Auswahl erfolgt damit über die gesamte Zeile anstelle nur der ersten Spalte (nur auf Windows). #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 (nur auf Windows).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.
- RemoveGadgetColumn(): Entfernt eine Spalte vom Gadget.
- AddGadgetItem(): Fügt einen Eintrag (mit optionalem Bild in der 16x16 Standard Icon-Größe) hinzu
- RemoveGadgetItem(): Entfernt einen Eintrag
- ClearGadgetItems(): Entfernt alle Einträge
- CountGadgetItems(): Ermittelt die Anzahl der aktuellen Einträge im #Gadget.
- GetGadgetItemColor(): Gibt die Text- oder Hintergrundfarbe des Eintrags zurück.
- SetGadgetItemColor(): Ändert die Text- oder Hintergrundfarbe des Eintrags.
- GetGadgetItemData(): Gibt den Wert zurück, welcher mit dem Eintrag gespeichert wurde.
- SetGadgetItemData(): Speichert einen Wert mit dem Eintrag.
- GetGadgetItemState(): Ermittelt den aktuellen Status des angegebenen Eintrags.
- SetGadgetItemState(): Ändert den aktuellen Status des angegebenen Eintrags.
- GetGadgetItemText(): Ermittelt den aktuellen Text des angegebenen Eintrags. (oder den Spalten-Titel, wenn 'Eintrag' = -1)
- SetGadgetItemText(): Ändert den aktuellen Text des angegebenen Eintrags. (oder den Spalten-Titel, wenn 'Eintrag' = -1)
- 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.
- GetGadgetAttribute() / SetGadgetAttribute(): Mit den folgenden Attributen:#PB_ListIcon_DisplayMode : Ermittelt bzw. ändert den Anzeigemodus des Gadgets. Kann eine der folgenden Konstanten sein: (nur auf Windows) - #PB_ListIcon_LargeIcon : großer Icon-Modus - #PB_ListIcon_SmallIcon : kleiner Icon-Modus - #PB_ListIcon_List : Listen-Icon-Modus - #PB_ListIcon_Report : Report-Modus (Spalten, Standardmodus)
- GetGadgetItemAttribute() / SetGadgetItemAttribute(): Mit den folgenden Attributen:#PB_ListIcon_ColumnWidth : Gibt die Breite der angegebenen 'Spalte' zurück bzw. ändert diese. Der Parameter 'Eintrag' wird ignoriert.
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.
Dieses Gadget unterstützt die SetGadgetColor() und GetGadgetColor() Befehle mit den folgenden Werten als 'FarbTyp':#PB_Gadget_FrontColor: Textfarbe #PB_Gadget_BackColor : Hintergrundfarbe #PB_Gadget_LineColor : Farbe der Gitterlinien, wenn der #PB_ListIcon_GridLines Flag verwendet wird.Die folgenden Ereignisse ("Events") werden durch EventType() unterstützt:#PB_EventType_LeftClick : linker Mausklick auf einen Eintrag, oder ein Häkchen wurde gesetzt/entfernt #PB_EventType_LeftDoubleClick #PB_EventType_RightClick #PB_EventType_RightDoubleClick #PB_EventType_Change : der aktuelle Eintrag wurde verändert #PB_EventType_DragStart : der Anwender versucht, eine Drag & Drop Operation zu startenNach einem #PB_EventType_DragStart Ereignis kann die Drag & Drop Library verwendet werden, um die Drag & Drop Operation zu starten.
Beispiel 1:If OpenWindow(0, 100, 100, 300, 100, "ListIcon Example", #PB_Window_SystemMenu | #PB_Window_ScreenCentered) ListIconGadget(0, 5, 5, 290, 90, "Name", 100, #PB_ListIcon_FullRowSelect|#PB_ListIcon_AlwaysShowSelection) AddGadgetColumn(0, 1, "Address", 250) AddGadgetItem(0, -1, "Harry Rannit"+Chr(10)+"12 Parliament Way, Battle Street, By the Bay") AddGadgetItem(0, -1, "Ginger Brokeit"+Chr(10)+"130 PureBasic Road, BigTown, CodeCity") Repeat Event = WaitWindowEvent() Until Event = #PB_Event_CloseWindow EndIfBeispiel 2:; Zeigt mögliche Flags des ListIconGadgets in Aktion... If OpenWindow(0, 0, 0, 640, 300, "ListIconGadgets", #PB_Window_SystemMenu | #PB_Window_ScreenCentered) ; 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 SetGadgetAttribute(5, #PB_ListIcon_DisplayMode, #PB_ListIcon_LargeIcon) AddGadgetItem(5, 1, "Picture 1", ImageID(0)) AddGadgetItem(5, 2, "Picture 2", ImageID(0)) EndIf Repeat : Until WaitWindowEvent() = #PB_Event_CloseWindow EndIf
Unterstützte OS
Alle