TrackBarGadget et nombres [RESOLU]

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
Avatar de l’utilisateur
MetalOS
Messages : 1510
Inscription : mar. 20/juin/2006 22:17
Localisation : Lorraine
Contact :

TrackBarGadget et nombres [RESOLU]

Message par MetalOS »

Salut tous le monde,

Pour un projet que je vient de commencer j'aimerais utiliser un TrackBarGadget() pour faire augmenter une valeur contenue dans un StringGadget(). Voici un code d'exemple.

Code : Tout sélectionner

Enumeration
  #Window_0
EndEnumeration
;}
;{ Gadgets
Enumeration
  #TrackBar_0
  #Text_1
EndEnumeration
;}
;}
Procedure OpenWindow_Window_0()
  If OpenWindow(#Window_0, 300, 174, 400, 97, "TrackBarGadget", #PB_Window_SystemMenu|#PB_Window_SizeGadget|#PB_Window_MinimizeGadget|#PB_Window_TitleBar)
    TrackBarGadget(#TrackBar_0, 15, 25, 190, 30, 0, 10, #PB_TrackBar_Ticks)
    TextGadget(#Text_1, 235, 25, 40, 25, "0", #PB_Text_Border|#PB_Text_Center)
    SetGadgetText(#text_1,"0")
  EndIf
EndProcedure

OpenWindow_Window_0()
Define v.i
;{- Event loop
Repeat
  Select WaitWindowEvent()
    ; ///////////////////
    Case #PB_Event_Gadget
      Select EventGadget()
        Case #TrackBar_0
          v=GetGadgetState(#trackbar_0)
          SetGadgetText(#text_1,Str(v))
      EndSelect
    ; ////////////////////////
    Case #PB_Event_CloseWindow
      Select EventWindow()
        Case #Window_0
          CloseWindow(#Window_0)
          Break
      EndSelect
  EndSelect
ForEver
;
;}
J'aimerais que que la valeur du StringGadget() n'augmente pas de 1 en 1, mais plutôt de 0.1 en 0.1 pour atteindre la valeur de 10 au final. J'ais fait plusieurs recherche sur le forum Fr et Eng mais aussi sur Purearea sans rien trouver :(

Quelqu'un aurait une idée ? Merci d'avance.
Dernière modification par MetalOS le jeu. 26/mai/2011 11:35, modifié 1 fois.
Avatar de l’utilisateur
falsam
Messages : 7334
Inscription : dim. 22/août/2010 15:24
Localisation : IDF (Yvelines)
Contact :

Re: TrackBarGadget et nombres

Message par falsam »

Code : Tout sélectionner

Enumeration
  #Window_0
EndEnumeration
;}
;{ Gadgets
Enumeration
  #TrackBar_0
  #Text_1
EndEnumeration
;}
;}
Procedure OpenWindow_Window_0()
  If OpenWindow(#Window_0, 300, 174, 400, 97, "TrackBarGadget", #PB_Window_SystemMenu|#PB_Window_SizeGadget|#PB_Window_MinimizeGadget|#PB_Window_TitleBar)
    TrackBarGadget(#TrackBar_0, 15, 25, 190, 30, 0, 1000, #PB_TrackBar_Ticks) ;<== Changement ici
    TextGadget(#Text_1, 235, 25, 40, 25, "0", #PB_Text_Border|#PB_Text_Center)
    SetGadgetText(#text_1,"0")
  EndIf
EndProcedure

OpenWindow_Window_0()

Define v.f ;<== Changement ici

;{- Event loop
Repeat
  Select WaitWindowEvent()
    ; ///////////////////
    Case #PB_Event_Gadget
      Select EventGadget()
        Case #TrackBar_0
          v=GetGadgetState(#trackbar_0)/100 ;<== Changement ici
          SetGadgetText(#text_1,StrD(v,1)) ;<== Changement ici
      EndSelect
    ; ////////////////////////
    Case #PB_Event_CloseWindow
      Select EventWindow()
        Case #Window_0
          CloseWindow(#Window_0)
          Break
      EndSelect
  EndSelect
ForEver
;
;}
Configuration : Windows 11 Famille 64-bit - PB 6.20 x64 - AMD Ryzen 7 - 16 GO RAM
Vidéo NVIDIA GeForce GTX 1650 Ti - Résolution 1920x1080 - Mise à l'échelle 125%
gnozal
Messages : 832
Inscription : mar. 07/déc./2004 17:35
Localisation : France
Contact :

Re: TrackBarGadget et nombres

Message par gnozal »

Comme çà ?

Code : Tout sélectionner

Enumeration
  #Window_0
EndEnumeration
;}
;{ Gadgets
Enumeration
  #TrackBar_0
  #Text_1
EndEnumeration
;}
;}
Procedure OpenWindow_Window_0()
  If OpenWindow(#Window_0, 300, 174, 400, 97, "TrackBarGadget", #PB_Window_SystemMenu|#PB_Window_SizeGadget|#PB_Window_MinimizeGadget|#PB_Window_TitleBar)
    TrackBarGadget(#TrackBar_0, 15, 25, 190, 30, 0, 100, #PB_TrackBar_Ticks)
    TextGadget(#Text_1, 235, 25, 40, 25, "0", #PB_Text_Border|#PB_Text_Center)
    SetGadgetText(#Text_1,"0")
  EndIf
EndProcedure

OpenWindow_Window_0()
Define v.d
;{- Event loop
Repeat
  Select WaitWindowEvent()
      ; ///////////////////
    Case #PB_Event_Gadget
      Select EventGadget()
        Case #TrackBar_0
          v=GetGadgetState(#TrackBar_0)
          SetGadgetText(#Text_1, StrD(v / 10, 1))
      EndSelect
      ; ////////////////////////
    Case #PB_Event_CloseWindow
      Select EventWindow()
        Case #Window_0
          CloseWindow(#Window_0)
          Break
      EndSelect
  EndSelect
ForEver
;
;}
Avatar de l’utilisateur
MetalOS
Messages : 1510
Inscription : mar. 20/juin/2006 22:17
Localisation : Lorraine
Contact :

Re: TrackBarGadget et nombres

Message par MetalOS »

Super, Merci bien les amis :wink:
Répondre