Page 1 sur 1

Afficher dernier element LisIconGadget

Publié : jeu. 04/avr./2019 22:05
par venom
Bonsoir a tous,

Voilà je cherche un moyen me permettant de toujours afficher la dernière ligne d'un ListIconGadget.

Je vous ai fait un petit code pour mieux comprendre.
Dans ce dernier vous avez un bouton qui permet d'ajouté des éléments a une ListIconGadget. Le problème, c'est qu'a un moment (quand il y a plus de valeur que la taille du gadget) une scrollbar apparait et les éléments s'ajoute "hors gadget". Moi je souhaiterais que la scroll soit toujours en bas :D

Avez-vous une idée ? D'avance merci.

Code : Tout sélectionner

;- Window Constants
Enumeration
  #Window_0
EndEnumeration

;- gadgets Constants
Enumeration
  #LIG
  #BG
EndEnumeration

  If OpenWindow(#Window_0, 0, 0, 800, 600, "", #PB_Window_SystemMenu | #PB_Window_MinimizeGadget | #PB_Window_TitleBar | #PB_Window_ScreenCentered)
   ListIconGadget(#LIG, 10, 10, 200, 200, "TitrePremiereColonne", 195, 0)
    For a = 0 To 8
     AddGadgetItem(#LIG, a, "Texte "+a , 0, 0)
    Next 
    
   ButtonGadget(#BG, 10, 220, 200, 20, "Ajouter un element", 0)
  EndIf 

  Repeat
   EventID = WaitWindowEvent()
    If EventID = #PB_Event_Gadget
      Select EventGadget()
          
        Case #BG
          AddGadgetItem(#LIG, CountGadgetItems(#LIG)+1, "Texte "+CountGadgetItems(#LIG) , 0, 0)

      EndSelect
    EndIf
  Until EventID = #PB_Event_CloseWindow





@++

Re: Afficher dernier element LisIconGadget

Publié : jeu. 04/avr./2019 22:31
par cage
Bonsoir,

Code : Tout sélectionner

  Repeat
   EventID = WaitWindowEvent()
    If EventID = #PB_Event_Gadget
      Select EventGadget()
         
        Case #BG
          AddGadgetItem(#LIG, CountGadgetItems(#LIG)+1, "Texte "+CountGadgetItems(#LIG) , 0, 0)
          SetGadgetState(#LIG, CountGadgetItems(#LIG)-1) ; <--- A AJOUTER

      EndSelect
    EndIf
  Until EventID = #PB_Event_CloseWindow
CAGE

Re: Afficher dernier element LisIconGadget

Publié : ven. 05/avr./2019 5:33
par venom
Merci cage.

J'avais bien vue la fonction SetGadgetState dans l'aide mais ça ne fonctionner pas (je n'avais pas mis le -1) :oops: :roll:

Mais c'est logique. Comme le 1er ID commence a 0 :lol:





@++

Re: Afficher dernier element LisIconGadget

Publié : ven. 05/avr./2019 12:17
par microdevweb
@venom,

Ne pas oublier aussi d'ajouter le flag #PB_ListIcon_AlwaysShowSelection

Re: Afficher dernier element LisIconGadget

Publié : ven. 05/avr./2019 17:06
par venom
microdevweb a écrit :@venom,

Ne pas oublier aussi d'ajouter le flag #PB_ListIcon_AlwaysShowSelection
Merci, mais dans mon cas je n'en ai pas besoin :wink:






@++