Seite 1 von 1
SetWindowColor
Verfasst: 25.11.2010 20:10
von Riacon
bei mir verschwindet das rechteck, wenn ich die fensterfarbe ändere. warum?
Code: Alles auswählen
OpenWindow(0,0,0,800,600,"test",#PB_Window_SystemMenu|#PB_Window_ScreenCentered)
;SetWindowColor(0, $00FF00);<---------------kommentar entfernen
StartDrawing(WindowOutput(0))
Box(100,100,600,400,$FF00FF)
StopDrawing()
Repeat:Until WaitWindowEvent(100)=#PB_Event_CloseWindow
__________________________________________________
Thread verschoben
Grafik & Sound - Programmierung>Anfänger
25.11.2010
RSBasic
Re: SetWindowColor
Verfasst: 25.11.2010 20:22
von Kiffi
Das Rechteck verschwindet auch teilweise, wenn Du das
Fenster zur Hälfte aus dem Bildschirm ziehst und dann
wieder zurückholst.
Abhilfe: Zeichne in ein Image, welches Du dann in einem
ImageGadget darstellst.
Grüße ... Kiffi
Re: SetWindowColor
Verfasst: 25.11.2010 20:31
von RSBasic
Wie Kiffi bereits richtig sagte, ist es sinnvoller, wenn du einen Image erstellst und dieses in einem ImageGadget lädst, da sonst das Fenster neu gezeichnet wird und dadurch deine einmailige Zeichnung verschwindet.
Hier ein Beispielcode:
Code: Alles auswählen
EnableExplicit
Define EventID
CreateImage(1,600,400)
If StartDrawing(ImageOutput(1))
Box(0,0,600,400,$FF00FF)
StopDrawing()
EndIf
If OpenWindow(0,0,0,800,600,"Window",#PB_Window_SystemMenu|#PB_Window_ScreenCentered|#PB_Window_MinimizeGadget|#PB_Window_MaximizeGadget|#PB_Window_SizeGadget)
ImageGadget(1,100,100,0,0,ImageID(1),0)
SetWindowColor(0,$00FF00)
Repeat
EventID=WaitWindowEvent()
If EventID = #PB_Event_CloseWindow
End
EndIf
ForEver
EndIf
Re: SetWindowColor
Verfasst: 25.11.2010 20:45
von ts-soft
Oder:
Code: Alles auswählen
OpenWindow(0,0,0,800,600,"test",#PB_Window_SystemMenu|#PB_Window_ScreenCentered)
SetWindowColor(0, $00FF00);<---------------kommentar entfernen
Repeat
Select WaitWindowEvent()
Case #PB_Event_CloseWindow
Break
Case #PB_Event_Repaint
StartDrawing(WindowOutput(0))
Box(100,100,600,400,$FF00FF)
StopDrawing()
EndSelect
ForEver