Grafiken hinter Button
Grafiken hinter Button
Hi,
ich habe eine paar Buttons per ButtonGadget(erstellt).
Ich will nun dem ganzen ein Hintergrundbild geben. Wie schaffe ich das das die Buttons auf den Hintergrund gezeichnet werden. Also das die der Hintergrund teilweise durch die Buttons verdeckt wird.
Dabei soll das programm Linux kompatibel bleiben.
mfg
DKing
ich habe eine paar Buttons per ButtonGadget(erstellt).
Ich will nun dem ganzen ein Hintergrundbild geben. Wie schaffe ich das das die Buttons auf den Hintergrund gezeichnet werden. Also das die der Hintergrund teilweise durch die Buttons verdeckt wird.
Dabei soll das programm Linux kompatibel bleiben.
mfg
DKing
Hallo!
Logisch gesehen müsste es so gehen:
Sag dem Programm zuerst, dass er das Bild auf dem Fenster darfstellen soll (im OpenWindow-fenster). Dann sagst du ihm, dass der Knopf -wo auch immer- erstellt werden soll.
Normalerweise müsste auf diese Weise ert das Bild geladen und angezeigt werden und dann müsste der Knopf auf das bild kommen, oder nicht?
Ich hatte nämlich schon ähnliche Probleme, zum Beispiel wenn ich zwei Gadget übereinanderlappen lssen wollte:
das gadget, dass ich zuerst in der CreateGadgetListe aufgerufen habe, kam unter das (oder heißt das "den") gadget, der als 2. / lettes aufgerufen wurde.
Logisch gesehen müsste es so gehen:
Sag dem Programm zuerst, dass er das Bild auf dem Fenster darfstellen soll (im OpenWindow-fenster). Dann sagst du ihm, dass der Knopf -wo auch immer- erstellt werden soll.
Normalerweise müsste auf diese Weise ert das Bild geladen und angezeigt werden und dann müsste der Knopf auf das bild kommen, oder nicht?
Ich hatte nämlich schon ähnliche Probleme, zum Beispiel wenn ich zwei Gadget übereinanderlappen lssen wollte:
das gadget, dass ich zuerst in der CreateGadgetListe aufgerufen habe, kam unter das (oder heißt das "den") gadget, der als 2. / lettes aufgerufen wurde.
PB 4.30
Code: Alles auswählen
Macro Happy
;-)
EndMacro
Happy End
Kannst du ein kurzes Beispiel geben? Wie soll man denn ein Imagegadget disablen? (sinn ???)bobobo hat geschrieben:das Hinterngrundbild packst Du in ein Imagegadget welches Du disablest
und was du noch nicht gesagt hast: wo soll dann der knopf positioniert werden? wie gewünscht auf dem bild?
thx, AND51
Zuletzt geändert von AND51 am 25.12.2007 01:58, insgesamt 1-mal geändert.
PB 4.30
Code: Alles auswählen
Macro Happy
;-)
EndMacro
Happy End
bitteschön
Code: Alles auswählen
Enumeration
#Window_0
#Button_0
#Button_1
#Button_2
#Button_3
#Button_4
#Image_0
#IMAGE_caught
EndEnumeration
UseJPEGImageDecoder()
Global Image0
Image0 = CatchImage(#IMAGE_caught, ?Image0)
DataSection
Image0:
IncludeBinary "Z:\Neuer Ordner (10)\12.jpg" ; <- HIER EIN EIGENS BILD HINPACKEN
EndDataSection
If OpenWindow(#Window_0, 258, 2, 600, 300, #PB_Window_SystemMenu | #PB_Window_SizeGadget | #PB_Window_TitleBar , "New window ( 0 )")
If CreateGadgetList(WindowID())
ResizeImage(#IMAGE_caught, WindowWidth(), WindowHeight()) ;<- Bild wird auf die Fenstergröße skaliert
Image0=UseImage(#Image_Caught) ;<- und neu zugewiesen das kann man auch dynamisch machen in der repeatschleife weiter unten
ImageGadget(#Image_0, 0, 0, WindowWidth(), WindowHeight(), Image0)
DisableGadget(#Image_0,1)
ButtonGadget(#Button_0, 85, 80, 55, 25, "")
ButtonGadget(#Button_1, 190, 65, 30, 20, "")
ButtonGadget(#Button_2, 300, 55, 110, 40, "")
ButtonGadget(#Button_3, 260, 150, 70, 45, "")
ButtonGadget(#Button_4, 140, 165, 50, 50, "")
EndIf
EndIf
Repeat ; Start of the event loop
Event = WaitWindowEvent() ; This line waits until an event is received from Windows
WindowID = EventWindowID() ; The Window where the event is generated, can be used in the gadget procedures
GadgetID = EventGadgetID() ; Is it a gadget event?
EventType = EventType() ; The event type
;You can place code here, and use the result as parameters for the procedures
If Event = #PB_EventGadget
If GadgetID = #Button_0
ElseIf GadgetID = #Button_1
ElseIf GadgetID = #Button_2
ElseIf GadgetID = #Button_3
ElseIf GadgetID = #Button_4
ElseIf GadgetID = #Image_0
EndIf
EndIf
Until Event = #PB_Event_CloseWindow ; End of the event loop
End
pb aktuel 6.2 windoof aktuell und sowas von 10
Ich hab Tinnitus im Auge. Ich seh nur Pfeifen.
Ich hab Tinnitus im Auge. Ich seh nur Pfeifen.
dankeschön
wenn ich fragen habe, kann ich sie dir dann nochmal stellen?
wenn ich fragen habe, kann ich sie dir dann nochmal stellen?
PB 4.30
Code: Alles auswählen
Macro Happy
;-)
EndMacro
Happy End
Nur wenn du Zeit hast bittediese Frage beantworten:
Kann ich irgendwie das Bild mit dieser Methode mit in die exe-Datei aufnehmen, beim kompilieren, sodass ich Freunden nur die endgültige, kompilierte exe-Datei geben brauche?bobobo hat geschrieben:UseJPEGImageDecoder()
Global Image0
Image0 = CatchImage(#IMAGE_caught, ?Image0)
DataSection
Image0:
IncludeBinary "Z:\Neuer Ordner (10)\12.jpg" ; <- HIER EIN EIGENS BILD HINPACKEN
EndDataSection
PB 4.30
Code: Alles auswählen
Macro Happy
;-)
EndMacro
Happy End
> Kann ich irgendwie das Bild mit dieser Methode mit in die exe-Datei
> aufnehmen, beim kompilieren, sodass ich Freunden nur die endgültige,
> kompilierte exe-Datei geben brauche?
ja. [c]IncludeBinary()[/c] sorgt dafür, dass die angegebene Datei mit in die EXE
einkompiliert wird. Nähere Infos findest Du im Handbuch (Cursor im Editor auf
[c]IncludeBinary[/c] stellen und dann <F1> drücken).
Grüße ... Kiffi
> aufnehmen, beim kompilieren, sodass ich Freunden nur die endgültige,
> kompilierte exe-Datei geben brauche?
ja. [c]IncludeBinary()[/c] sorgt dafür, dass die angegebene Datei mit in die EXE
einkompiliert wird. Nähere Infos findest Du im Handbuch (Cursor im Editor auf
[c]IncludeBinary[/c] stellen und dann <F1> drücken).
Grüße ... Kiffi
a²+b²=mc²