Page 1 sur 1
changer le min/max d'un trackbar/progressbar/spingadget
Publié : ven. 19/août/2005 23:12
par Dr. Dri
c'est pas faisable et pourtant ce serait bien pratique dans certains cas! on peut imaginer ca avec get/setgadgetattribute et deux nouvelles constantes...
Dri
Publié : sam. 20/août/2005 8:23
par lionel_om
ya pas moyen par l'API ?

Publié : sam. 20/août/2005 8:55
par lionel_om
Code : Tout sélectionner
Enumeration
#WIN
#TRACK
#BUTTON
EndEnumeration
If OpenWindow(#WIN,0,0,320,200,#PB_Window_SystemMenu|#PB_Window_ScreenCentered,"CheckBoxGadget") And CreateGadgetList(WindowID())
TrackBarGadget(#TRACK, 10, 40,250, 20,0,10000)
ButtonGadget(#BUTTON, 10,80, 80,20,"Change max")
SetGadgetState(#TRACK, 99)
curPos.Point
Repeat
EventID = WaitWindowEvent()
If EventID = #PB_Event_Gadget
Select EventGadgetID()
Case #BUTTON
Debug SendMessage_(GadgetID(#TRACK), #TBM_GETRANGEMAX, 0, 0)
SendMessage_(GadgetID(#TRACK), #TBM_SETRANGEMAX, 0, 100)
Debug SendMessage_(GadgetID(#TRACK), #TBM_GETRANGEMAX, 0, 0)
; MAJ pos curseur
SendMessage_(GadgetID(#TRACK), #WM_LBUTTONDOWN, 0, 0)
SendMessage_(GadgetID(#TRACK), #WM_LBUTTONUP, 0, 0)
; autre constante : #TBM_SETRANGEMIN
;EndCase
EndSelect
EndIf
Until EventID=#PB_Event_CloseWindow
EndIf
Par contre la MAJ du curseur ne se fait pas automatiquement
Publié : sam. 20/août/2005 13:38
par Dr. Dri
je me doute bien que c'est faisable, mais ce serait bien aussi en PB (comme avec le scroll gadget)
Dri

Publié : sam. 20/août/2005 14:49
par Anonyme2
J'ai écrit 2 commandes pour les progressbar (lib MoreProgressBarGadget)
SetProgressBarRange() et GetProgressBarRange pour modifier ou retrouver la plage de la ProgressBar.
Bientôt dispo.
Publié : lun. 22/août/2005 16:36
par Dr. Dri
je viens de me rendre compte que ce n'est pas non plus possible avec le spingadget...
Dri
Publié : lun. 22/août/2005 17:32
par Fred
C'est pas faux, je le note.