Seite 1 von 1
ButtonImageGadget() mit #PB_Button_Toggle
Verfasst: 11.03.2006 11:55
von Sven
Ich wäre sehr dafür, dem ButtonImageGadget() ein Flag #PB_Button_Toggle zu spendieren, damit man es wie ein normales ButtonGadget() als Schalter einsetzen kann.
Was haltet ihr davon? Mal vorschlagen?
Sven
Verfasst: 12.03.2006 02:05
von Hyper
Ich stimme Dir völlig zu. Ist mir noch gar nicht aufgefallen, dass das hier nicht geht.
Verfasst: 05.04.2007 22:03
von sharkpeter
Beitrag hochkram.
Würde ich auch begrüßen. Habe mir diese Woche deshalb einen abgegeigt.
Gruß Jens
Verfasst: 05.04.2007 22:29
von AND51
Stimme euch zu!
Verfasst: 05.04.2007 23:12
von ts-soft
Ist vielleicht unter Linux oder MacOS nicht möglich? Wird also nie kommen?
In Windows ist es kein Problem:
Code: Alles auswählen
If OpenWindow(0, #PB_Ignore, #PB_Ignore, 400, 300, "")
If CreateGadgetList(WindowID(0))
ButtonGadget(0, 10, 10, 168, 35, "", #PB_Button_Toggle|#BS_BITMAP)
SendMessage_(GadgetID(0), #BM_SETIMAGE, 0, LoadImage(0, #PB_Compiler_Home + "Examples\Sources\Data\PureBasic.bmp"))
While WaitWindowEvent() <> 16 : Wend
EndIf
EndIf
Verfasst: 05.04.2007 23:37
von edel
Lieber den Style aendern , so laesst es sich dann auch weiterhin
das Bild mit setgadgetstate aendern.
Code: Alles auswählen
Macro AddStyle(id,style)
SetWindowLong_(GadgetID(id),#GWL_STYLE,GetWindowLong_(GadgetID(id),#GWL_STYLE)|style)
SetWindowPos_(GadgetID(id),0,0,0,0,0,#SWP_NOMOVE|#SWP_NOSIZE|#SWP_FRAMECHANGED)
EndMacro
If OpenWindow(0, #PB_Ignore, #PB_Ignore, 400, 300, "")
If CreateGadgetList(WindowID(0))
LoadImage(0, #PB_Compiler_Home + "Examples\Sources\Data\PureBasic.bmp")
ButtonImageGadget(0, 10, 10, 168, 35, ImageID(0))
AddStyle(0,#PB_Button_Toggle)
While WaitWindowEvent() <> 16 : Wend
EndIf
EndIf
Verfasst: 05.04.2007 23:46
von ts-soft
@edel
Leider kann ich dann bei aktiviertem XP-Style den getoggleten Zustand nicht
erkennen, sieht genauso aus, als wenn der Button den Focus hat. Vielleicht
liegt das ja an meinem Style?
Verfasst: 06.04.2007 00:39
von edel
Unter Vista hab ich mit deinem Code auch nur einen Auswahlrahmen,
Bei der 2. Version ist es zwar schwer zu erkennen , aber das wird devinitiv
am Theme liegen.
Verfasst: 06.04.2007 01:23
von AND51
Der Benutzer kann ja bei gedrücktem Button ein anderes Bild einfügen, als bei nicht gedrücktem Button.
Danke für die Codes!