Seite 1 von 1
DrawText auf zweitem Window klappt nicht
Verfasst: 11.11.2014 21:15
von stevie1401
Code: Alles auswählen
EnableExplicit
Define win1,win2
win1=OpenWindow(#PB_Any,10,10,600,300,"Fenster1")
win2=OpenWindow(#PB_Any,10,10,600,300,"Fenster2")
StartDrawing(WindowOutput(win2))
DrawText(100,100,"Text")
StopDrawing()
Repeat
Until WaitWindowEvent()=#PB_Event_CloseWindow
Auf win1 klapp es.
Was muss ich tun, damit ich auf win2 schreiben kann?
Re: DrawText auf zweitem Window klappt nicht
Verfasst: 11.11.2014 21:19
von RSBasic
Es liegt daran, dass das Fenster neu gezeichnet wurde. Deshalb ist der auf dem Fenster gezeichnete Text verschwunden.
Ich empfehle dir CanvasGadget fürs Zeichen.
Re: DrawText auf zweitem Window klappt nicht
Verfasst: 12.11.2014 09:13
von Shardik
stevie1401 hat geschrieben:Was muss ich tun, damit ich auf win2 schreiben kann?
Code: Alles auswählen
EnableExplicit
Define.I Win1,Win2
Procedure DrawTextIntoWindow2()
Shared Win2.I
StartDrawing(WindowOutput(Win2))
DrawText(85,100,"Text")
StopDrawing()
EndProcedure
Win1=OpenWindow(#PB_Any,10,10,200,200,"Fenster1")
Win2=OpenWindow(#PB_Any,220,10,200,200,"Fenster2")
DrawTextIntoWindow2()
Repeat
Select WaitWindowEvent()
Case #PB_Event_CloseWindow
Break
Case #PB_Event_Repaint
If EventWindow() = Win2
DrawTextIntoWindow2()
EndIf
EndSelect
ForEver
Re: DrawText auf zweitem Window klappt nicht
Verfasst: 12.11.2014 14:16
von stevie1401
Interessantes Beispiel.
Was bewirkt dieses Ereignis: #PB_Event_Repaint?
Verhindert es ein Neuzeichnen des Fensters?
Und endlich habe ich den Shared-Befehl verstanden ^^
Danke schön

Re: DrawText auf zweitem Window klappt nicht
Verfasst: 12.11.2014 14:19
von Shardik
stevie1401 hat geschrieben:Was bewirkt dieses Ereignis: #PB_Event_Repaint?
Verhindert es ein Neuzeichnen des Fensters?
#PB_Event_Repaint wird ausgelöst, wenn das Fenster neu gezeichnet werden muß, z.B. weil es durch ein anderes Fenster überdeckt war und nun wieder sichtbar wird.