[Gelöst] 2D Drawing auf ImageGadget funktioniert nicht
Verfasst: 06.01.2013 22:35
Hallo,
Ich wollte auf ein geladenes Bild eine 2D Grafik zeichnen. Leider erscheint da nichts.
Kann mir da jemand helfen?
Hier mal ein Beispielcode
Nachtrag:
Wird das Fenster aus dem Bildschirmbereich herausbewegt und wieder zurück bewegt, ist urplötzlich die blaue Box da
2. Nachtrag
Lösung steht hier im Forum
Danke Danilo
Ich wollte auf ein geladenes Bild eine 2D Grafik zeichnen. Leider erscheint da nichts.
Kann mir da jemand helfen?
Hier mal ein Beispielcode
Code: Alles auswählen
Enumeration
#Window
#ImgGadget
#Image
EndEnumeration
Procedure Open_Window()
OpenWindow(#Window,10,10,300,300,"Draw on image")
ImageGadget(#ImgGadget,0,0,300,300,#Image)
EndProcedure
Open_Window()
strTMP.s = OpenFileRequester("Bild Laden","*.bmp","Bitmap (*.bmp)|*.bmp",0)
LoadImage(#Image,strTMP.s)
SetGadgetState(#ImgGadget,ImageID(#Image)) ; schreibe Bild ins ImageGadget
StartDrawing(ImageOutput(#Image)) ; Definiere Image als Ausgabeziel
Box(10,10,30,30,$ff0000) ; Zeichne einen blauen Kasten
StopDrawing()
Repeat
Select WaitWindowEvent()
Case #PB_Event_CloseWindow
End
EndSelect
ForEver
Wird das Fenster aus dem Bildschirmbereich herausbewegt und wieder zurück bewegt, ist urplötzlich die blaue Box da
2. Nachtrag
Lösung steht hier im Forum
Danke Danilo
Code: Alles auswählen
Enumeration
#Window
#ImgGadget
#Image
EndEnumeration
Procedure Open_Window()
OpenWindow(#Window,10,10,300,300,"Draw on image")
ImageGadget(#ImgGadget,0,0,300,300,#Image)
EndProcedure
Procedure RedrawWindow(hWin)
If hWin
InvalidateRect_(hWin,0,1)
UpdateWindow_(hWin)
EndIf
EndProcedure
Open_Window()
strTMP.s = OpenFileRequester("Bild Laden","*.bmp","Bitmap (*.bmp)|*.bmp",0)
LoadImage(#Image,strTMP.s)
SetGadgetState(#ImgGadget,ImageID(#Image))
StartDrawing(ImageOutput(#Image))
Box(10,10,30,30,$ff0000)
StopDrawing()
RedrawWindow(GadgetID(#ImgGadget))
Repeat
Select WaitWindowEvent()
Case #PB_Event_CloseWindow
End
EndSelect
ForEver