trouver le bon AddGadgetItem

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
Avatar de l’utilisateur
venom
Messages : 3138
Inscription : jeu. 29/juil./2004 16:33
Localisation : Klyntar
Contact :

trouver le bon AddGadgetItem

Message par venom »

bonjour,

voila mon probleme est que je ne trouve pu d'exemple qui montre dans un ComboBoxGadget comment savoir sur quel AddGadgetItem on clique :? .

voila si vous trouver un lien car moi je ne trouve pas :oops:

sinon j'ai fait un petit code d'exemple :wink:

Code : Tout sélectionner

;- Window Constants
Enumeration
  #Window_0
EndEnumeration

;- Gadget Constants
Enumeration
  #ComboBox_0
EndEnumeration

  If OpenWindow(#Window_0, 216, 0, 160, 70, "test",  #PB_Window_SystemMenu | #PB_Window_MinimizeGadget | #PB_Window_TitleBar | #PB_Window_ScreenCentered )
    If CreateGadgetList(WindowID(#Window_0))
      ComboBoxGadget(#ComboBox_0, 10, 10, 140, 130)
       AddGadgetItem(#ComboBox_0, 0, "debug 0")
       AddGadgetItem(#ComboBox_0, 1, "debug 1")
       AddGadgetItem(#ComboBox_0, 2, "debug 2")
       AddGadgetItem(#ComboBox_0, 3, "debug 3")
       AddGadgetItem(#ComboBox_0, 4, "debug 4")
       AddGadgetItem(#ComboBox_0, 5, "debug 5")
       AddGadgetItem(#ComboBox_0, 6, "debug 6")
       AddGadgetItem(#ComboBox_0, 7, "debug 7")     
        SetGadgetState(#ComboBox_0, 0)       
    EndIf
  EndIf

  Repeat
   EventID = WaitWindowEvent()
    If EventID = #PB_Event_Gadget 
      Select EventGadget()
       
       Case #ComboBox_0
        
     EndSelect
    EndIf
  Until EventID = #PB_Event_CloseWindow
voila merci d'avance


@++
Windows 10 x64, PureBasic 5.73 x86 & x64
GPU : radeon HD6370M, CPU : p6200 2.13Ghz
nico
Messages : 3702
Inscription : ven. 13/févr./2004 0:57

Message par nico »

GetGadgetState je crois.
Avatar de l’utilisateur
venom
Messages : 3138
Inscription : jeu. 29/juil./2004 16:33
Localisation : Klyntar
Contact :

Message par venom »

GetGadgetState je crois.
bin si c'est sa je ne sais pas comment l'utilisé car si je regarde l'aide si me dit
GetGadgetState(#Gadget)

Renvoie dans Resultat l'état actuel du gadget référencé par #Gadget. Cette fonction est universelle et fonctionne avec pratiquement tous les gadgets.
mais si a la place de #Gadget je met #ComboBox_0 ( voir mon exemple) bin la fonction que je vais indiquer ensuite va se reproduire sur touts mes AddGadgetItem et non pas par exeple sur le 3 eme AddGadgetItem de mon exemple .

ps: j'espert que tu comprend c'est peut etre un peut confu :) .


@++
Windows 10 x64, PureBasic 5.73 x86 & x64
GPU : radeon HD6370M, CPU : p6200 2.13Ghz
nico
Messages : 3702
Inscription : ven. 13/févr./2004 0:57

Message par nico »

Désolé, je comprend pas ce que tu dis, sinon la réponse que je t'ai donnée est bonne. Regarde l'aide.
Avatar de l’utilisateur
venom
Messages : 3138
Inscription : jeu. 29/juil./2004 16:33
Localisation : Klyntar
Contact :

Message par venom »

bin par exemple je souhaiterais que quand je coche mon

Code : Tout sélectionner

AddGadgetItem(#ComboBox_0, 2, "debug 2")
j'entend un bip

donc sa se passe ici

Code : Tout sélectionner

Repeat
   EventID = WaitWindowEvent()
    If EventID = #PB_Event_Gadget
      Select EventGadget()
       
       Case #ComboBox_0
       
     EndSelect
    EndIf
  Until EventID = #PB_Event_CloseWindow
jusque la d'accord.

mais je je fait comme ceu-ci d'apres ce que je pense etre :oops:

Code : Tout sélectionner

Repeat
   EventID = WaitWindowEvent()
    If EventID = #PB_Event_Gadget
      Select EventGadget()
       
       Case #ComboBox_0
        Resultat = GetGadgetState(#ComboBox_0)
         beep(1000,1000)

     EndSelect
    EndIf
  Until EventID = #PB_Event_CloseWindow


bin sa bip a chaque fois que je touche a #ComboBox_0 donc comment dire au programme qu'il doit biper par exemple quand je clic sur la ligne debug 2.
voila désol mais j'y arrive pas :oops: .


@++
Windows 10 x64, PureBasic 5.73 x86 & x64
GPU : radeon HD6370M, CPU : p6200 2.13Ghz
nico
Messages : 3702
Inscription : ven. 13/févr./2004 0:57

Message par nico »

Je te donne la fonction, toi tu l'écris dans ton code sans t'en servir, il faudrais que tu te donnes la peine de regarder l'aide.
Backup
Messages : 14526
Inscription : lun. 26/avr./2004 0:40

Message par Backup »

Resultat = GetGadgetState(#ComboBox_0)
et dans RESULTAT IL Y A QUOI A TON AVIS ??? :lol:
Avatar de l’utilisateur
venom
Messages : 3138
Inscription : jeu. 29/juil./2004 16:33
Localisation : Klyntar
Contact :

Message par venom »

bonjour,

bon bin j'ai réussi mais avec des OptionGadget :) . bon je sais sa n'est pas ce que j'ai prévu a la base mais sa fonctionne quand meme :wink: .

Code : Tout sélectionner

       Case #Button_0
        If GetGadgetState(#Radio_2)
         Beep(1000,1000)
        EndIf


merci de votre aide.


@++
Windows 10 x64, PureBasic 5.73 x86 & x64
GPU : radeon HD6370M, CPU : p6200 2.13Ghz
Avatar de l’utilisateur
cederavic
Messages : 1338
Inscription : lun. 09/févr./2004 23:38
Localisation : Bordeaux

Message par cederavic »

Code : Tout sélectionner

Resultat = GetGadgetState(#Gadget)

 ComboBoxGadget(): renvoie le numéro de l'élément sélectionné ou -1 si pas de sélection.
C'est français pourtant :?
brossden
Messages : 833
Inscription : lun. 26/janv./2004 14:37

Message par brossden »

Peut être que ce bout de code te conviendra !

Code : Tout sélectionner

Enumeration
  #Window_0
EndEnumeration

;- Gadget Constants
Enumeration
  #ComboBox_0
EndEnumeration

If OpenWindow(#Window_0, 216, 0, 160, 70, "test",  #PB_Window_SystemMenu | #PB_Window_MinimizeGadget | #PB_Window_TitleBar | #PB_Window_ScreenCentered )
  If CreateGadgetList(WindowID(#Window_0))
    ComboBoxGadget(#ComboBox_0, 10, 10, 140, 130)
    AddGadgetItem(#ComboBox_0, 0, "debug 0")
    AddGadgetItem(#ComboBox_0, 1, "debug 1")
    AddGadgetItem(#ComboBox_0, 2, "debug 2")
    AddGadgetItem(#ComboBox_0, 3, "debug 3")
    AddGadgetItem(#ComboBox_0, 4, "debug 4")
    AddGadgetItem(#ComboBox_0, 5, "debug 5")
    AddGadgetItem(#ComboBox_0, 6, "debug 6")
    AddGadgetItem(#ComboBox_0, 7, "debug 7")     
    SetGadgetState(#ComboBox_0, 0)       
  EndIf
EndIf

Repeat
  EventID = WaitWindowEvent()
  EventType = EventType()
  If EventID = #PB_Event_Gadget
    Select EventGadget()
      Case #ComboBox_0
        If EventType = 1
          MessageRequester("Element selectionné", "Vous avez selectionné :  "+Str(GetGadgetState(#ComboBox_0)))
      EndIf
        
    EndSelect
  EndIf
Until EventID = #PB_Event_CloseWindow
Répondre