Hallo, ich hatte mal wieder Lust auf GDI.
naja, jetzt tut mein Kopf weh
Ich habe ein bisschen den Überblick verloren wie jetzt weiter machen kann.
Mir sind einige Fragen eingefallen, die ich am Ende stellen werde.
Diese hängen irgendwie mit dem Projekt zusammen. (Nicht alle haben mit GDI zu tuen)
Kurze Beschreibung:
-
Allgemin:
- Das Script ist als include für andere Projekte gedacht
- Es sollen nicht mehr als x Rahmen möglich sein - damit der Rechner nicht abbrennt (noch in Arbeit)
- viele Parameter können als globale Variable vorgegeben werden (hoffentlich selbsterklärend)
- der gezeichnete Rahmen soll auch relativ zu einem Fenster gezeichnet werden können (auch noch in Arbeit)
(Func GetAbsolutClientPos_0_X($hwnd) / Func GetAbsolutClientPos_0_Y($hwnd)
-
Func DrawFrame(ByRef $aArray)
"Hauptfunktion"
an Hand der Parameter für die Funktion PixelChecksum ( left, top, right, bottom [, step = 1 [, hwnd [, mode = 0]]] ) vorgegeben werden möchte ich die Position für einen Rahmen berechnen und darstellen -
Func ClearFrame($aArray)
"Hauptfunktion"
soll den Rahmen schließen und die Ressourcen frei geben. -
Func DrawFrame_SetPosition($iLeft, $iTop, $iRight, $iBottom, $sPosName = "", $iPositionMode = 0) und
Func DrawFrame_SetFrames(ByRef $aArray, $nPenWidth = $g_nPenWidthDefalt, $nOfFrames = $g_DefaltNumberOfFrames, $iColour1 = $iColour1Defalt, $iColour2 = $iColour2Defalt)
das $aArray wird durch diese Funktionen definiert. Beide Funktionen sind bis jetzt nur zum Testen gedacht. (2 Funktionen zwecks besserer Lesbarkeit)
-
Func ConsWriteExt($nStart, $iSLN, $sString, $vValue = '', $sString2 = Null, $vValue2 = Null, $iLength = 25, $iStringLength = 0)
Diese Funktion räumt den Consolenoutput auf.(könnte mal ein eigenes Projekt werden.)
Zu meinen Fragen:
- Wie heißt der erste sichtbare Pixel auf dem Monitor im Koordinatensystem (x/y)(absolut)?
0/0 oder 1/1? - Windows scheint jede Linie mit „Extension“ zu zeichnen, also mit mindestens einer halb transparenten Linie. Eigentlich möchte ich einfach – z.B. wie in Paint - eine x Pixel breite, 100 % deckende Linie zeichnen. Ist das möglich bzw. wie stelle ich das ein?
- beim rumspielen hatte ich den Eindruck das Linien nicht an jeder Koordinate möglich sind. Stimmt das?
- welcher Weg ist sinnvoller weiter zu verfolgen? GDI+ oder als Picture-Objekt?
ist dort ein unterschied? / Vor/Nachteile?
Die Scripte