Page 1 sur 1

svp. please. svp. modif variable

Publié : dim. 08/janv./2006 22:44
par david
bon, je promet!!!
j'ai vu qu'il y avait des gens super cools et je promet qu'à partir de ce jour je vais plus chercher et moins embetter le monde mais svp donnez moi du courage....

le prog ci-après modifie ma variable quand je clique sur le bouton '1' (voir le message affiché) mais je ne comprends pas pourquoi le chiffre n'est pas modifié dans la fenetre #String_0. comment faire pour qu'il soit modifié a chaque appuie sur le bouton '1'

merci d'avance

;- Window Constants
;
Enumeration
#Window_0
EndEnumeration

;- Gadget Constants
;
Enumeration
#Button_1
#Button_2
#Button_3
#Button_4
#Button_5
#Button_6
#String_0

EndEnumeration


a=0
textb=21
textb$=Str(textb)

If OpenWindow ( #Window_0 , 216, 0, 212, 111, #PB_Window_SystemMenu | #PB_Window_SizeGadget | #PB_Window_TitleBar , "Pg" )
If CreateGadgetList ( WindowID ())


ButtonGadget ( #Button_1 , 10, 10, 40, 40, "1" )
ButtonGadget ( #Button_2 , 60, 10, 40, 40, "2" )
ButtonGadget ( #Button_3 , 110, 10, 40, 40, "3" )
ButtonGadget ( #Button_4 , 160, 10, 40, 40, "4" )
ButtonGadget ( #Button_5 , 60, 60, 40, 40, "<-" )
ButtonGadget ( #Button_6 , 110, 60, 90, 40, "remise Zero" )
StringGadget ( #String_0 , 10, 60, 40, 40, textb$ )
EndIf

;La boucle Repeat-Until sert à la gestion des évènements
Repeat

EventID.l= WaitWindowEvent () ; on récupère un évènement
Select EventID ; on sélectionne cet évènement
Case #PB_EventGadget ; cet évènement concerne une action sur un Gadget
Select EventGadgetID () ; dans ce cas, on récupère l'identifiant du gadget qui l'a créé
Case #Button_1 ; on compare l'identifiant à #ButtonGadget
a=1
textb=textb-a
textb$=Str(textb)


MessageRequester("Messenger Info", "Vous avez un message de : "+textb$, 0)







Case #Button_2 ; on compare l'identifiant à #ButtonGadget
a=2
textb=textb-a
textb$=Str(textb)
Case #Button_3 ; on compare l'identifiant à #ButtonGadget
a=3
textb=textb-a
textb$=Str(textb)
Case #Button_4 ; on compare l'identifiant à #ButtonGadget
a=4
textb=textb-a
textb$=Str(textb)
Case #Button_5 ; on compare l'identifiant à #ButtonGadget
textb=textb+a
textb$=Str(textb)
Case #Button_6 ; on compare l'identifiant à #ButtonGadget
textb=21
textb$=Str(textb)

EndSelect

Case #PB_Event_CloseWindow ; cet évènement concerne la fermeture de la fenêtre


Quit=1


EndSelect


Until Quit=1


EndIf

Publié : dim. 08/janv./2006 22:56
par cederavic
Regarde la commande SetGadgetText()

Publié : lun. 09/janv./2006 0:32
par Guimauve
Tiens, voilà comment on fait :

Mais je ne comprends pas ce que tu veux faire avec ce programme.

A+
Guimauve

Code : Tout sélectionner

;- Window Constants
;
Enumeration
   #Window_0
EndEnumeration

;- Gadget Constants
;
Enumeration
   #Button_1
   #Button_2
   #Button_3
   #Button_4
   #Button_5
   #Button_6
   #String_0
   
EndEnumeration


a=0
textb=21
textb$=Str(textb)

If OpenWindow ( #Window_0 , 216, 0, 212, 111, #PB_Window_SystemMenu | #PB_Window_SizeGadget | #PB_Window_TitleBar , "Pg" )
   If CreateGadgetList ( WindowID ())
      
      
      ButtonGadget ( #Button_1 , 10, 10, 40, 40, "1" )
      ButtonGadget ( #Button_2 , 60, 10, 40, 40, "2" )
      ButtonGadget ( #Button_3 , 110, 10, 40, 40, "3" )
      ButtonGadget ( #Button_4 , 160, 10, 40, 40, "4" )
      ButtonGadget ( #Button_5 , 60, 60, 40, 40, "<-" )
      ButtonGadget ( #Button_6 , 110, 60, 90, 40, "remise Zero" )
      StringGadget ( #String_0 , 10, 60, 40, 40, textb$ )
      
   EndIf
   
   ;La boucle Repeat-Until sert à la gestion des évènements
   Repeat
      
      EventID.l= WaitWindowEvent () ; on récupère un évènement
      Select EventID ; on sélectionne cet évènement
         Case #PB_EventGadget ; cet évènement concerne une action sur un Gadget
            Select EventGadgetID () ; dans ce cas, on récupère l'identifiant du gadget qui l'a créé
               Case #Button_1 ; on compare l'identifiant à #ButtonGadget
                  a=1
                  textb=textb-a
                  ; textb$=Str(textb)
                  SetGadgetText(#String_0,Str(textb))
                  ; MessageRequester("Messenger Info", "Vous avez un message de : "+textb$, 0)
                  
               Case #Button_2 ; on compare l'identifiant à #ButtonGadget
                  a=2
                  textb=textb-a
                  ; textb$=Str(textb)
                  SetGadgetText(#String_0,Str(textb))
                  
               Case #Button_3 ; on compare l'identifiant à #ButtonGadget
                  a=3
                  textb=textb-a
                  ; textb$=Str(textb)
                  SetGadgetText(#String_0,Str(textb))
                  
               Case #Button_4 ; on compare l'identifiant à #ButtonGadget
                  a=4
                  textb=textb-a
                  ; textb$=Str(textb)
                  SetGadgetText(#String_0,Str(textb))
                  
               Case #Button_5 ; on compare l'identifiant à #ButtonGadget
                  textb=textb+a
                  ; textb$=Str(textb)
                  SetGadgetText(#String_0,Str(textb))
                  
               Case #Button_6 ; on compare l'identifiant à #ButtonGadget
                  textb=21
                  ; textb$=Str(textb)
                  SetGadgetText(#String_0,Str(textb))
                  
            EndSelect
            
         Case #PB_Event_CloseWindow ; cet évènement concerne la fermeture de la fenêtre
            
            
            Quit=1
            
            
      EndSelect
      
      
   Until Quit=1
   
   
EndIf

Publié : lun. 09/janv./2006 12:43
par brossden
Bonjour

Presque le même code mais plus court et optimisé pour ne pas répéter les même instructions !

Code : Tout sélectionner

Enumeration
  #Window_0 : #Button_1 : #Button_2 : #Button_3 
  #Button_4 : #Button_5 : #Button_6 : #String_0
  
EndEnumeration
textb=21

OpenWindow ( #Window_0 , 216, 0, 212, 111, #PB_Window_SystemMenu | #PB_Window_SizeGadget | #PB_Window_TitleBar , "Pg" )
If CreateGadgetList ( WindowID ())
  ButtonGadget ( #Button_1 , 10, 10, 40, 40, "1" )
  ButtonGadget ( #Button_2 , 60, 10, 40, 40, "2" )
  ButtonGadget ( #Button_3 , 110, 10, 40, 40, "3" )
  ButtonGadget ( #Button_4 , 160, 10, 40, 40, "4" )
  ButtonGadget ( #Button_5 , 60, 60, 40, 40, "<-" )
  ButtonGadget ( #Button_6 , 110, 60, 90, 40, "remise Zero" )
  StringGadget ( #String_0 , 10, 60, 40, 40, textb$ )
EndIf
  
  ;La boucle Repeat-Until sert à la gestion des évènements
Repeat
  Event= WaitWindowEvent () ; on récupère un évènement
  EventID=EventGadgetID() 
  If EventID =>#Button_1 And EventID<= #Button_6 ; If Event = #PB_EventGadget
    Select EventID ; dans ce cas, on récupère l'identifiant du gadget qui l'a créé
      Case #Button_1 ; on compare l'identifiant à #ButtonGadget
        a=-1
      Case #Button_2 ; on compare l'identifiant à #ButtonGadget
        a=-2
      Case #Button_3 ; on compare l'identifiant à #ButtonGadget
        a=-3
      Case #Button_4 ; on compare l'identifiant à #ButtonGadget
        a=-4
      Case #Button_5 ; on compare l'identifiant à #ButtonGadget
        a=-a
      Case #Button_6 ; on compare l'identifiant à #ButtonGadget
        textb=21
        a=0
    EndSelect
    textb=textb+a
    SetGadgetText(#String_0,Str(textb)) 
  EndIf
Until Event=#PB_Event_CloseWindow