Seite 1 von 1
TrackBarGadget
Verfasst: 26.03.2013 16:21
von NeoRon
Hallo eine weitere Frage zu den Gadgets.
Das ja der Code um eine TrackBar mit Ticks zu erstellen.
Code: Alles auswählen
If OpenWindow(0, 0, 0, 320, 200, "TrackBarGadget", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
TextGadget (4, 10, 100, 250, 20, "TrackBar Ticks", #PB_Text_Center)
TrackBarGadget(1, 10, 120, 250, 20, 0, 5, #PB_TrackBar_Ticks)
SetGadgetState(1, 2)
Repeat : Until WaitWindowEvent() = #PB_Event_CloseWindow
EndIf
Jetzt will ich aber den einzelnen Ticks Werte zuweisen und das er diese auch erkennt bei welchem Wert er in der TrackBar gerade ist und diesen Wert dann einer Variable zuweist.
Wie stelle ich das an?
mit GetGadgetAttribute?
Grüße NeoRon
Codetags hinzu
-- Andesdaf
Re: TrackBarGadget
Verfasst: 26.03.2013 16:56
von ts-soft
Ich weiß jetzt nicht, ob Du es so meinst, aber kannst ja mal gucken:
Code: Alles auswählen
If OpenWindow(0, 0, 0, 320, 200, "TrackBarGadget", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
TextGadget (0, 10, 100, 250, 20, "", #PB_Text_Center)
TrackBarGadget(1, 10, 120, 250, 20, 0, 5, #PB_TrackBar_Ticks)
SetGadgetState(1, 2)
SetGadgetText(0, "Trackbar Ticks: " + GetGadgetState(1))
Repeat
Select WaitWindowEvent()
Case #PB_Event_CloseWindow
Break
Case #PB_Event_Gadget
If EventGadget() = 1
SetGadgetText(0, "Trackbar Ticks: " + GetGadgetState(1))
EndIf
EndSelect
ForEver
EndIf
Gruß
Thomas
Re: TrackBarGadget
Verfasst: 26.03.2013 17:00
von Andesdaf
Nativ von PB aus geht das wohl nicht, aber folgender Code liefert dir
die Position des Schiebers zurück
Code: Alles auswählen
If OpenWindow(0, 0, 0, 320, 200, "TrackBarGadget", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
TextGadget (4, 10, 100, 250, 20, "TrackBar Ticks", #PB_Text_Center)
TrackBarGadget(1, 10, 120, 250, 20, 0, 5, #PB_TrackBar_Ticks)
SetGadgetState(1, 2)
Repeat
iEvent = WaitWindowEvent()
Select iEvent
Case #PB_Event_Gadget
Select EventGadget()
Case 1
Debug "Die Trackbar befindet sich an Position " + Str(GetGadgetState(1)) + "."
EndSelect
EndSelect
Until iEvent = #PB_Event_CloseWindow
EndIf
Re: TrackBarGadget
Verfasst: 26.03.2013 17:50
von bobobo
ich auch mal
Code: Alles auswählen
If OpenWindow(0, 0, 0, 320, 200, "TrackBarGadget", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
TextGadget (0, 30, 100, 250, 20, "", #PB_Text_Center)
zink=20
TrackBarGadget(1, 10, 120, 250, 20, 0, zink, #PB_TrackBar_Ticks)
TrackBarGadget(2, 5, 5, 20, 180, 0,zink, #PB_TrackBar_Ticks|#PB_TrackBar_Vertical)
TrackBarGadget(3, 10, 10, 250, 20, 0, zink, #PB_TrackBar_Ticks)
TrackBarGadget(4, 300, 5, 20, 180, 0,zink, #PB_TrackBar_Ticks|#PB_TrackBar_Vertical)
SetGadgetText(0, "Trackbar Ticks: " + GetGadgetState(1))
Repeat
p+zonk
If p>=zink
zonk=-1
ElseIf p<1
zonk=1
EndIf
SetGadgetState(1,p): SetGadgetState(2,p)
SetGadgetState(3,zink-p): SetGadgetState(4,zink-p)
DieVariable=GetGadgetState(1)
SetGadgetText(0, "Trackbar Ticks: " + DieVariable)
SetWindowTitle(0,"Der inhalt der Variablen ist jetzt "+Str(DieVariable))
Select WaitWindowEvent(25)
Case #PB_Event_CloseWindow
Break
Case #PB_Event_Gadget
If EventGadget() = 1
SetGadgetText(0, "Trackbar Ticks: " + GetGadgetState(1))
EndIf
EndSelect
ForEver
EndIf
Re: TrackBarGadget
Verfasst: 28.03.2013 08:57
von NeoRon
Vielen Dank euch für die schnellen Antworten.
