Problem mit Hintergrundfarbe beim Containergadget
Verfasst: 20.06.2012 15:22
Hallo liebe Forumer!
Ich stelle immer wieder Merkwürdigkeiten in PureBasic fest. Beim Einfärben des Hintergrundes von unterschiedlichen Containergadgets habe ich festgestellt, daß letztere nicht unterschiedlich gefärbt werden können. Ein mitgeliefertes Codeschnipsel zeigt das Verhalten:
Wie mein Beispiel (erzeugt vom PureForm Designer ohne weitere Funktionalität) zeigt, gibt es zwei Container, die mit verschiedenen Background Farben belegt worden sind. Angezeigt werden beide aber mit der zuletzt angegebenen Farbe (im Code mit Kommentar versehen). Liegt das eventuell an der Einstellung >xp skin< in den Compiler-Optionen? Für mich ist dies erstmal nicht zu erklären.
Vielen Dank im Voraus für eine Antwort
forsti
Ich stelle immer wieder Merkwürdigkeiten in PureBasic fest. Beim Einfärben des Hintergrundes von unterschiedlichen Containergadgets habe ich festgestellt, daß letztere nicht unterschiedlich gefärbt werden können. Ein mitgeliefertes Codeschnipsel zeigt das Verhalten:
Code: Alles auswählen
Enumeration
#Window_0
EndEnumeration
;}
;{ Gadgets
Enumeration
#Container_0
#Text_3
#Button_1
#Button_2
#Container_4
#Calendar_9
EndEnumeration
;}
Define.l Event, EventWindow, EventGadget, EventType, EventMenu
;}
Procedure OpenWindow_Window_0()
If OpenWindow(#Window_0, 450, 200, 569, 400, "Window_0", #PB_Window_SystemMenu|#PB_Window_SizeGadget|#PB_Window_MinimizeGadget|#PB_Window_TitleBar)
ContainerGadget(#Container_0, 65, 35, 420, 130, #PB_Container_Raised)
TextGadget(#Text_3, 110, 60, 170, 20, "Label", #PB_Text_Center)
ButtonGadget(#Button_1, 15, 15, 150, 20, "Button_1")
ButtonGadget(#Button_2, 240, 15, 150, 20, "Button_2")
CloseGadgetList()
ContainerGadget(#Container_4, 60, 185, 420, 190, #PB_Container_Raised)
CalendarGadget(#Calendar_9, 80, 10, 240, 165)
CloseGadgetList()
; Gadget Colors
PureCOLOR_SetGadgetColor(#Container_0, #PureCOLOR_SystemColor, $FF0080)
PureCOLOR_SetGadgetColor(#Text_3, #PureCOLOR_SystemColor, $FFFF)
PureCOLOR_SetButtonColor(#Button_1, #PureCOLOR_SystemColor, $FFFF00)
PureCOLOR_SetButtonColor(#Button_2, #PureCOLOR_SystemColor, $8080FF)
PureCOLOR_SetGadgetColor(#Container_4, #PureCOLOR_SystemColor, $1791E8) ; $1791E8 überschreibt $FF0080?
EndIf
EndProcedure
OpenWindow_Window_0()
;{- Event loop
Repeat
Event = WaitWindowEvent()
Select Event
; ///////////////////
Case #PB_Event_Gadget
EventGadget = EventGadget()
EventType = EventType()
If EventGadget = #Container_0
ElseIf EventGadget = #Text_3
ElseIf EventGadget = #Button_1
ElseIf EventGadget = #Button_2
ElseIf EventGadget = #Container_4
ElseIf EventGadget = #Calendar_9
EndIf
; ////////////////////////
Case #PB_Event_CloseWindow
EventWindow = EventWindow()
If EventWindow = #Window_0
CloseWindow(#Window_0)
Break
EndIf
EndSelect
ForEver
;
;}
Vielen Dank im Voraus für eine Antwort
forsti