MessageRequester() timide [RESOLU]

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
DarkIchigo
Messages : 62
Inscription : lun. 22/mars/2010 11:34

MessageRequester() timide [RESOLU]

Message par DarkIchigo »

Bon j'ai encore un pb :cry:

j'ai besoin pour un programme d'un prompt qui donne le choix entre 4 options puis récupère
le choix de l'utilisateur et l'affiche (pour le moment) dans un MessageRequester().

Pb le MessageRequester n'apparait jamais.

J'ai loupé quoi?? :?

Code : Tout sélectionner

;->>>> Déclaration variables / constantes <<<<

Define.c

#T_x_window = 250
#T_y_window = 200
#T_x_button = 100
#T_y_button = 30
Top = 10

Enumeration
  #Window
  #TexteGadget
  #OptionGadget1
  #OptionGadget2
  #OptionGadget3
  #OptionGadget4
  #ButtonGadget
EndEnumeration

#FLAGS = #PB_Window_MinimizeGadget|#PB_Window_TitleBar|#PB_Window_ScreenCentered

;->>>> Initialisation <<<<

If OpenWindow(#Window, 450, 200, #T_x_window, #T_y_window, "Période", #FLAGS)
   TextGadget(#TexteGadget, (#T_x_window/2)-100, Top, 200, 30, "A quelle période veux-tu accéder ?", #PB_Text_Center) : Top + 30
   OptionGadget(#OptionGadget1, (#T_x_window/2)-30, Top, 80, 25, "PE10") : Top+ 25
   OptionGadget(#OptionGadget2, (#T_x_window/2)-30, Top, 80, 25, "~~AH10~~") : Top+ 25
   OptionGadget(#OptionGadget3, (#T_x_window/2)-30, Top, 80, 25, "PE11") : Top+ 25
   OptionGadget(#OptionGadget4, (#T_x_window/2)-30, Top, 80, 25, "AH11") : Top+ 25
   ButtonGadget(#ButtonGadget, #T_x_window/2-#T_x_button/2, #T_y_window-#T_y_button-10, #T_x_button, #T_y_button, "Select")

;->>>> Boucle programme <<<<

Repeat

  Event = WaitWindowEvent()
  
  Select EventWindow()
  
    Case #Window
    
      Select Event
      
        Case #PB_Event_CloseWindow
          CloseWindow(#Window)
          
        Case #ButtonGadget
          If GetGadgetState(#OptionGadget1) : Result$ = GetGadgetText(#OptionGadget1) : EndIf
          If GetGadgetState(#OptionGadget2) : Result$ = GetGadgetText(#OptionGadget2) : EndIf
          If GetGadgetState(#OptionGadget3) : Result$ = GetGadgetText(#OptionGadget3) : EndIf
          If GetGadgetState(#OptionGadget4) : Result$ = GetGadgetText(#OptionGadget4) : EndIf
          
          MessageRequester("Info", "Période sélectionnée : "+Result$, 0)
          
      EndSelect
      
    EndSelect

Until Event = #PB_Event_CloseWindow

EndIf ; OpenWindow
Merci d'avance de votre aide
Dernière modification par DarkIchigo le mer. 31/mars/2010 13:11, modifié 1 fois.
Avatar de l’utilisateur
flaith
Messages : 1487
Inscription : jeu. 07/avr./2005 1:06
Localisation : Rennes
Contact :

Re: MessageRequester() timide

Message par flaith »

Peut-être comme ca :

Code : Tout sélectionner

;->>>> Déclaration variables / constantes <<<<

#T_x_window = 250
#T_y_window = 200
#T_x_button = 100
#T_y_button = 30
Define.i Top = 10

Enumeration
	#Window
	#TexteGadget
	#OptionGadget1
	#OptionGadget2
	#OptionGadget3
	#OptionGadget4
	#ButtonGadget
EndEnumeration

#FLAGS = #PB_Window_MinimizeGadget|#PB_Window_TitleBar|#PB_Window_ScreenCentered

;->>>> Initialisation <<<<

If OpenWindow(#Window, 450, 200, #T_x_window, #T_y_window, "Période", #FLAGS)
		TextGadget(#TexteGadget, (#T_x_window/2)-100, Top, 200, 30, "A quelle période veux-tu accéder ?", #PB_Text_Center) : Top + 30
		OptionGadget(#OptionGadget1, (#T_x_window/2)-30, Top, 80, 25, "PE10") : Top+ 25
		OptionGadget(#OptionGadget2, (#T_x_window/2)-30, Top, 80, 25, "~~AH10~~") : Top+ 25
		OptionGadget(#OptionGadget3, (#T_x_window/2)-30, Top, 80, 25, "PE11") : Top+ 25
		OptionGadget(#OptionGadget4, (#T_x_window/2)-30, Top, 80, 25, "AH11") : Top+ 25
		ButtonGadget(#ButtonGadget, #T_x_window/2-#T_x_button/2, #T_y_window-#T_y_button-10, #T_x_button, #T_y_button, "Select")

  ;->>>> Boucle programme <<<<
  
  Repeat
    Event = WaitWindowEvent()
    
    Select Event
    
  		Case #PB_Event_CloseWindow
  			CloseWindow(#Window)
  			
  		Case #PB_Event_Gadget
  		  Select EventGadget()
  				Case #OptionGadget1 : Result$ = "PE10"
  				Case #OptionGadget2 : Result$ = "~~AH10~~"
  				Case #OptionGadget3 : Result$ = "PE11"
  				Case #OptionGadget4 : Result$ = "AH11"
  				Case #ButtonGadget : MessageRequester("Info", "Période sélectionnée : "+Result$)
  		  EndSelect
  			
  	EndSelect
  
  Until Event = #PB_Event_CloseWindow

EndIf ; OpenWindow
Avatar de l’utilisateur
Jacobus
Messages : 1559
Inscription : mar. 06/avr./2004 10:35
Contact :

Re: MessageRequester() timide

Message par Jacobus »

Ou comme ça

Code : Tout sélectionner

;->>>> Déclaration variables / constantes <<<<

;Define.c

#T_x_window = 250
#T_y_window = 200
#T_x_button = 100
#T_y_button = 30
Top = 10

Enumeration
  #Window
  #TexteGadget
  #OptionGadget1
  #OptionGadget2
  #OptionGadget3
  #OptionGadget4
  #ButtonGadget
EndEnumeration

#FLAGS = #PB_Window_MinimizeGadget|#PB_Window_TitleBar|#PB_Window_ScreenCentered

;->>>> Initialisation <<<<

If OpenWindow(#Window, 450, 200, #T_x_window, #T_y_window, "Période", #FLAGS) <> 0
   TextGadget(#TexteGadget, (#T_x_window/2)-100, Top, 200, 30, "A quelle période veux-tu accéder ?", #PB_Text_Center) : Top + 30
   OptionGadget(#OptionGadget1, (#T_x_window/2)-30, Top, 80, 25, "PE10") : Top+ 25
   OptionGadget(#OptionGadget2, (#T_x_window/2)-30, Top, 80, 25, "~~AH10~~") : Top+ 25
   OptionGadget(#OptionGadget3, (#T_x_window/2)-30, Top, 80, 25, "PE11") : Top+ 25
   OptionGadget(#OptionGadget4, (#T_x_window/2)-30, Top, 80, 25, "AH11") : Top+ 25
   ButtonGadget(#ButtonGadget, #T_x_window/2-#T_x_button/2, #T_y_window-#T_y_button-10, #T_x_button, #T_y_button, "Select")

;->>>> Boucle programme <<<<

Repeat

 Event = WaitWindowEvent() 
  Select Event
     Case #PB_Event_Gadget
   
       Select EventGadget()
         
        Case #ButtonGadget
          If GetGadgetState(#OptionGadget1) = 1 : Result$ = GetGadgetText(#OptionGadget1) 
          ElseIf GetGadgetState(#OptionGadget2) = 1 : Result$ = GetGadgetText(#OptionGadget2) 
          ElseIf GetGadgetState(#OptionGadget3) = 1 : Result$ = GetGadgetText(#OptionGadget3) 
          ElseIf GetGadgetState(#OptionGadget4) = 1 : Result$ = GetGadgetText(#OptionGadget4) : EndIf        
         
          MessageRequester("Info", "Période sélectionnée : "+Result$, 0)
         
       EndSelect
       
  EndSelect 


Until Event = #PB_Event_CloseWindow
End 
EndIf ; OpenWindow
C'est ton Define.c qui déconnait entre autres. Tu n'es pas obligé de définir ta variable, elle est auto en Integer (comme l'a déclaré Flaith) ce qui n'est pas plus mal ma fois. Avant la 4.40 c'était les " .l " maintenant les " .i "
Quand tous les glands seront tombés, les feuilles dispersées, la vigueur retombée... Dans la morne solitude, ancré au coeur de ses racines, c'est de sa force maturité qu'il renaîtra en pleine magnificence...Jacobus.
DarkIchigo
Messages : 62
Inscription : lun. 22/mars/2010 11:34

Re: MessageRequester() timide

Message par DarkIchigo »

Merci beaucoup,

donc si j'ai bien compris Jacobus, le '.l' de long a été remplacé par '.i' de integer ?
Avatar de l’utilisateur
Jacobus
Messages : 1559
Inscription : mar. 06/avr./2004 10:35
Contact :

Re: MessageRequester() timide

Message par Jacobus »

C'est ça. Et la différence est de taille pour le 64 bits.
Mais attention on parle des variables non explicitement définies.
si par exemple tu écris: a = 10 alors a sera considérée comme a.i alors qu'auparavant elle aurait été considérée comme a.l
Soyons clairs :|
Quand tous les glands seront tombés, les feuilles dispersées, la vigueur retombée... Dans la morne solitude, ancré au coeur de ses racines, c'est de sa force maturité qu'il renaîtra en pleine magnificence...Jacobus.
DarkIchigo
Messages : 62
Inscription : lun. 22/mars/2010 11:34

Re: MessageRequester() timide

Message par DarkIchigo »

Ok donc j'avais bien compris, suis fier de moi ^^

Ben merci du coup ca march, plus qu'à l'intégrer au reste mais j'ai encore du chemin pour que tout marche ensemble :D
Répondre