Seite 1 von 1
ButtonImageGadget transparent machen
Verfasst: 26.11.2013 19:01
von enigma
Hallo,
ist es möglich ein ButtonImageGadget transparent zu machen so das nur das Image sichtbar ist?
Es würde mir auch reichen wenn das Gadget randlos wäre.
Gruß
Enigma
Re: ButtonImageGadget transparent machen
Verfasst: 26.11.2013 19:05
von ts-soft
Warum nimmste dafür nicht einfach ein CanvasGadget?
Re: ButtonImageGadget transparent machen
Verfasst: 26.11.2013 20:08
von RSBasic
Code: Alles auswählen
EnableExplicit
Define EventID
CreateImage(1, 50, 50, 24, RGB(100, 200, 255))
If OpenWindow(0, 0, 0, 500, 400, "Window", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
ButtonImageGadget(1, 50, 50, 60, 60, ImageID(1), #BS_OWNERDRAW)
Repeat
EventID = WaitWindowEvent()
If EventID = #PB_Event_Gadget
Select EventGadget()
Case 1
Debug "Klick"
EndSelect
EndIf
If EventID = #PB_Event_CloseWindow
End
EndIf
ForEver
EndIf
Re: ButtonImageGadget transparent machen
Verfasst: 27.11.2013 08:01
von enigma
Besten Dank!
@ts-soft
zur Not wäre das eine Lösung gewesen, aber der rahmenlose Button gefällt mir besser.
@RSBasic
woher weiß man sowas wie "#BS_OWNERDRAW"?
Gruß
Enigma
Re: ButtonImageGadget transparent machen
Verfasst: 27.11.2013 10:40
von RSBasic
@enigma
#BS_OWNERDRAW ist eine WinAPI-Konstante.
ButtonImageGadget() ist bei WinAPI ein ganz normaler Button und da gibt es Styles, die du verwenden kannst:
http://msdn.microsoft.com/en-us/library ... 85%29.aspx
Auf der von mir verlinkten Seite gibt es auch eine Beschreibung zu BS_OWNERDRAW. Damit kannst du einen eigenen Button erstellen ohne Standard-Style (kein Rahmen und kein Hintergrund) des Buttons.
Das bedeutet aber auch, dass deine Anwendung ausschließlich unter Windows läuft, wenn du WinAPI-Konstanten/-Funktionen/-Strukturen verwendest.
Re: ButtonImageGadget transparent machen
Verfasst: 28.11.2013 10:44
von enigma
@RSBasic
Danke für den Super-Link!
Gruß
Enigma