ListIconGadget()

Syntaxe

Resultat = ListIconGadget(#Gadget, x, y, Largeur, Hauteur, Titre$, LargeurTitre [, Options])
Description
Crée un gadget de listes avec icônes dans la GadgetList en cours. Si #PB_Any est utilisé pour le paramètre '#Gadget', le numéro du nouveau gadget sera renvoyé dans 'Resultat'. #Gadget est le numéro du gadget renvoyé par la fonction EventGadget(). Titre$ est le titre de la première colonne, et LargeurTitre est sa largeur initiale.
Lorsqu'une ListIcon est créée, sa liste d'éléments est vide.

Vous pouvez ajouter une 'mini aide' à ce gadget en utilisant GadgetToolTip().

Les fonctions suivantes peuvent être utilisées pour agir sur le contenu de cette liste :

- AddGadgetColumn(): Ajoute une colonne au gadget.
- AddGadgetItem(): Ajoute un élément et éventuellement une image.
- RemoveGadgetItem(): Supprime un élément.
- ClearGadgetItemList(): Supprime tous les éléments.
- CountGadgetItems(): Renvoie le nombre d'éléments actuellement contenus dans le gadget.
- GetGadgetItemColor(): Renvoie la couleur du texte ou du fond de l'élément.
- SetGadgetItemColor(): Change la couleur du texte ou du fond de l'élément.
- GetGadgetItemData(): Renvoie la valeur personnalisée associée à cet élément.
- SetGadgetItemData(): Associe une valeur personnalisée à cet élément.
- GetGadgetItemState(): Renvoie l'état de l'élément spécifié. Ce peut être une combinaison de #PB_ListIcon_Selected et #PB_ListIcon_Checked si les 'checkboxes' sont affichées
- SetGadgetItemState(): Change l'état de l'élément spécifié. Ce peut être une combinaison de #PB_ListIcon_Selected et #PB_ListIcon_Checked si les 'checkboxes' sont affichées
- GetGadgetItemText(): Renvoie le texte de l'élément spécifié. Si 'Element' = -1, alors le titre de la colonne est renvoyé.
- SetGadgetItemText(): Change le texte de l'élément spécifié. Si 'Element' = -1, alors le titre de la colonne est modifié.
- GetGadgetState(): Renvoie le premier élément selectionné ou -1 s'il n'y a pas d'élément sélectionné.
- SetGadgetState(): Change l'élément séléctionné (tous les autres éléments sont alors désélectionnés). Si -1 est utilisé, tous les éléments seront désélectionnés.
- GetGadgetItemAttribute() avec l'attribut suivant:
  #PB_ListIcon_ColumnWidth: Renvoie la largeur de la 'Colonne' spécifiée. Le paramètre 'Element' est ignoré.
- SetGadgetItemAttribute() avec l'attribut suivant:
  #PB_ListIcon_ColumnWidth: Change la largeur de la 'Colonne' spécifiée. Le paramètre 'Element' est ignoré.

Si vous voulez ajouter du contenu à un gadget ListIcon contenant plusieurs colonnes en utilisant AddGadgetItem(), utilisez le format "première colonne"+chr(10)+"la deuxième" comme paramètre Texte$.

Pour changer la présentation de la liste, Utiliser ChangeListIconGadgetDisplay(). Quatres types de présentation sont autorisés : Petites icônes, Grandes icônes, Liste et Détails (en colonnes).

Le paramètre facultatif 'Options' peut être une combinaison des constantes suivantes:
  #PB_ListIcon_CheckBoxes         : Affiche une case à cocher dans la première colonne.
  #PB_ListIcon_MultiSelect        : Active le mode 'sélection multiple'.
  #PB_ListIcon_GridLines          : Affiche des lignes de séparation.
  #PB_ListIcon_FullRowSelect      : La sélection s'étend à toute la ligne au lieu de la première colonne.
  #PB_ListIcon_HeaderDragDrop     : L'ordre des colonnes peut être changé avec un glisser/déposer (drag'n'drop).
  #PB_ListIcon_AlwaysShowSelection: Affiche la selection même quand le gadget n'est plus actif.
Ce gadget supporte les commandes SetGadgetColor() et GetGadgetColor() avec les valeurs 'TypeCouleur' suivantes:
  #PB_Gadget_FrontColor: Couleur du texte
  #PB_Gadget_BackColor : Couleur du fond
  #PB_Gadget_LineColor : Couleur de la grille si l'option #PB_ListIcon_GridLines est utilisée.
Ce gadget supporte également les commandes SetGadgetItemColor() et GetGadgetItemColor() avec les valeurs 'TypeCouleur' suivantes:
  #PB_Gadget_FrontColor: Texte de l'élément.
  #PB_Gadget_BackColor : Fond de l'élément.
Les évènements suivants sont supportés par EventType():
  #PB_EventType_LeftClick        : Clic avec le bouton gauche de la souris, ou une case à cocher a été utilisée.
  #PB_EventType_LeftDoubleClick  : Double-clic avec le bouton gauche de la souris
  #PB_EventType_RightClick       : Clic avec le bouton droit de la souris
  #PB_EventType_RightDoubleClick : Double-clic avec le bouton droit de la souris
  #PB_EventType_Change           : l'élément sélectionné a été changé
  #PB_EventType_DragStart        : L'utilisateur a essayé de lancer Une opération 'Glisser & Déposer'.
Après un évènement #PB_EventType_DragStart , la bibliothèque Drag & Drop peut être utilisée pour commencer une opération 'Glisser & Déposer'.

Exemple:

 If OpenWindow(0, 100, 100, 300, 100, "ListIconGadget", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
   If CreateGadgetList(WindowID(0))
     ListIconGadget(0, 5, 5, 290, 90, "Nom", 100, #PB_ListIcon_FullRowSelect|#PB_ListIcon_AlwaysShowSelection)
     AddGadgetColumn(0, 1, "Adresse", 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
       Evenement = WaitWindowEvent()
     Until Evenement = #PB_Event_CloseWindow
   EndIf
 EndIf

Exemple:

  ; Démonstration des options possibles pour le gadget liste avec icônes...
  If OpenWindow(0, 0, 0, 690, 300, "ListIconGadget", #PB_Window_SystemMenu | #PB_Window_ScreenCentered) And CreateGadgetList(WindowID(0))
    ; colonne de gauche
    TextGadget    (6,  10,  10, 300, 20, "Liste avec icônes standard", #PB_Text_Center)
    ListIconGadget(0,  10,  25, 300, 70, "Colonne 1", 100)
    TextGadget    (7,  10, 105, 300, 20, "Liste avec icônes + cases à cocher", #PB_Text_Center)
    ListIconGadget(1,  10, 120, 300, 75, "Colonne 1", 100, #PB_ListIcon_CheckBoxes)  ; Liste avec icônes et cases à cocher
    TextGadget    (8,  10, 205, 300, 20, "Liste avec icônes + sélection multiple", #PB_Text_Center)
    ListIconGadget(2,  10, 220, 300, 70, "Colonne 1", 100, #PB_ListIcon_MultiSelect) ; Liste avec icônes et sélection multiple
    ; colonne de droite
    TextGadget    (9, 330,  10, 350, 20, "Liste avec icônes + lignes de séparation",#PB_Text_Center)
    ListIconGadget(3, 330,  25, 350, 70, "Colonne 1", 100, #PB_ListIcon_GridLines)
    TextGadget   (10, 330, 105, 350, 20, "Liste avec icônes + sélection de ligne entière + sélection toujours affichée",#PB_Text_Center)
    ListIconGadget(4, 330, 120, 350, 75, "Colonne 1", 100, #PB_ListIcon_FullRowSelect|#PB_ListIcon_AlwaysShowSelection)
    TextGadget   (11, 330, 205, 350, 20, "Liste avec icônes standard + mode grandes icônes",#PB_Text_Center)
    ListIconGadget(5, 330, 225, 350, 65, "", 200,#PB_ListIcon_GridLines)
    For a = 0 To 4            ; pour chacune des 5 premières listes avec icônes
      For b = 2 To 4          ; ajouter 3 colonnes supplémentaires
        AddGadgetColumn(a, b, "Colonne " + Str(b), 65)
      Next
      For b = 0 To 2          ; ajouter 4 éléments à chaque ligne des listes avec icônes
        AddGadgetItem(a, b, "Elément 1"+Chr(10)+"Elément 2"+Chr(10)+"Elément 3"+Chr(10)+"Elément 4")
      Next
    Next
    ; Ici nous changeons l'affichage de la liste avec icônes en mode grandes icônes et nous affichons une image
    If LoadImage(0, "map2.bmp")     ; changez le chemin/fichier contenant votre image 32x32 pixel
      ChangeListIconGadgetDisplay(5, 0)
      AddGadgetItem(5, 1, "Image 1", ImageID(0))
      AddGadgetItem(5, 2, "Image 2", ImageID(0))
    EndIf  
    Repeat : Until WaitWindowEvent() = #PB_Event_CloseWindow
  EndIf

OS Supportés

Tous

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