Seite 3 von 4
Verfasst: 15.05.2009 12:53
von alter Mann
.. ob das allerdings nicht den Rahmen sprengt für einen anscheinend Total-Neueinsteiger, wage ich in Frage zu stellen.
Da hast Du wahrscheinlich recht, aber nachdem ich die API-Zeichenfunktionen gefunden hatte, hat mich der Ehrgeiz gepackt. Das größte Problem war für mich herauszufinden, wie man mit API-Funktionen auf ein Image-Gadget malt.
die Übergabe der Arrays irritiert mich etwas.
das wirkt auf mich, als ob mehrere Elemente gezeichnet werden sollten.
außerdem wäre es m.A.n. vorzuziehen, gleich mit POINT structs zu arbeiten, bzw. mit RECT.
Ich bin halt Fan von Arrays.

Ich wollte die Übergabe so allgemein wie möglich halten, ist so eine Angewohnheit, falls man das noch mal irgendwo anders braucht.
die Bezier funktionen scheinen nicht verwendet zu werden?
Nein, das hatte ich nicht mehr geschafft. Kommt vielleicht noch rein und dann noch ordentlich kommentiert und ab damit in Stargates Codearchiv.
Wird aber erst heute Abend...
Verfasst: 15.05.2009 20:57
von Andesdaf
> und ab damit in Stargates Codearchiv
Da gehören gute Codes auch hin

Verfasst: 30.05.2009 22:45
von alter Mann
Verfasst: 31.05.2009 19:24
von Andesdaf
schöner Code!
Ich habe im Supportthread zu STARGATEs Codearchiv mal geschrieben, dass
eine direkte Verlinkung gut wäre (nicht ins Edit-Feld

)
Re: Basketball Playbook erstellen
Verfasst: 15.03.2010 20:47
von P1TBULL
Hallo,
wenn ich ein Hintergrundbild für das ImageGadget verwende verschwindet das Bild beim Zeichnen und die "geraden" Pfeile werden nicht mehr richtig gezeichnet. Woran kann das liegen?
Liebe Grüße
Hier mal der geänderte Abschnitt:
Code: Alles auswählen
Procedure.i Open_WindowMain()
If CatchImage(#ImageID_0,?court) = 0
MessageRequester("Achtung!","Kann Image nicht erstellen")
End
EndIf
; F: Fenster definieren
If OpenWindow(#Window_0, 50, 50, 750, 750, "Pfeile malen und Images positionieren", #PB_Window_SystemMenu | #PB_Window_SizeGadget | #PB_Window_TitleBar )
ImageGadget(#Image_0, 145, 5, 600, 600, ImageID(#ImageID_0))
Re: Basketball Playbook erstellen
Verfasst: 15.03.2010 23:41
von c4s
Legst du mehrere ImageGadgets übereinander oder wie?
Mal einfach alles nötige in ein Bild - fertig.
Re: Basketball Playbook erstellen
Verfasst: 15.03.2010 23:57
von alter Mann
du musst auf das Image #ImageID_0 zeichnen
z.B. so
Code: Alles auswählen
Procedure Main()
; F: Hauptfunktion
If CreateImage(#ImageID_0,600,600) = 0
MessageRequester("Achtung!","Kann Image nicht erstellen")
End
EndIf
;################## eingefügt
LoadImage(#Image_2,"D:\temp\test.bmp") ; oder mit CatchImage...
;##################
If CreateImage(#ImageID_1,110,20) = 0
MessageRequester("Achtung!","Kann Image nicht erstellen")
End
EndIf
StartDrawing(ImageOutput(#ImageID_1)) ; Farbe des Images-Button zeichnen
glColor = RGB(255,255,255)
Box(0,0,109,19,glColor)
StopDrawing()
If Open_WindowMain() = 0
MessageRequester("Achtung!","Kann Fenster nicht öffnen")
End
EndIf
StartDrawing(ImageOutput(#ImageID_0)) ; Hintergrund des Images zeichnen
Box(0,0,ImageWidth(#ImageID_0),ImageHeight(#ImageID_0),RGB(50,50,50))
;#####################eingefügt
If IsImage(#Image_2)
DrawImage(ImageID(#Image_2),0,0,ImageWidth(#ImageID_0),ImageHeight(#ImageID_0))
EndIf
;#####################
StopDrawing()
SetGadgetState(#Image_0,ImageID(#ImageID_0))
....
und dann immer neu als Hintergrund zeichnen
Code: Alles auswählen
Procedure Draw (iAnz.i, Array iX.i(1), Array iY.i(1) )
; F: Pfeil zeichnen vorbereiten
; E: hDC Windows Device Context
; iAnz Anzahl Koordinaten
; iX(),iY() Koordinaten
Protected iTyp = GetGadgetState(#Combo_0) ; Pfeillinientyp aus Combobox auslesen
If iTyp = -1
iTyp = #PS_SOLID
Else
iTyp = GetGadgetItemData(#Combo_0,iTyp)
EndIf
Protected hDC = StartDrawing(ImageOutput(#ImageID_0)) ; Device Context des Imagegadgets
Box(0,0,GadgetWidth(#Image_0),GadgetHeight(#Image_0),RGB(50,50,50)) ; Hintergrund
;#######################eingefügt
If IsImage(#Image_2)
DrawImage(ImageID(#Image_2),0,0,ImageWidth(#ImageID_0),ImageHeight(#ImageID_0))
EndIf
;#######################
...
Re: Basketball Playbook erstellen
Verfasst: 16.03.2010 08:58
von P1TBULL
Juhuuu es klappt
Vielen Dank!!!!
Re: Basketball Playbook erstellen
Verfasst: 17.03.2010 23:02
von P1TBULL
Hallo,
ich hab noch ein kleines Problem. Ich wollte über die Funktion Bilder einzufügen ein Bild mit transparentem Hintergrund einbauen aber es wird immer ein weißer Hintergrund anstatt einem transparentem angezeigt. Kann mir jemand helfen wie ich den Hintergrund transparent bekomme?
Liebe Grüße
Re: Basketball Playbook erstellen
Verfasst: 18.03.2010 10:38
von alter Mann
schau dir mal die Hilfe zu DrawAlphaImage an