Hey Leute,
Da ich ja grade GDI+ am lernen bin, ist ein kleines Script entstanden.
Die Formel ist wirklich durch Zufall entstanden
Spoiler anzeigen
#include <GDIPlus.au3>
_GDIPlus_Startup() ;GDI+ starten
[/autoit] [autoit][/autoit] [autoit]Opt("GUIOnEventMode", 1) ;OnEvent Modus einschalten
[/autoit] [autoit][/autoit] [autoit]Global Const $iWidth = 400 ;Width Gui
Global Const $iHeight = 300 ;Height Gui
Global $hPen_Red = _GDIPlus_PenCreate(0xFFFF0000) ;Pen Rot
Global $hPen_Yellow = _GDIPlus_PenCreate(0xFFFFFF00) ;Pen Gelb
Global $hPen_Green = _GDIPlus_PenCreate(0xFF00FF00) ;Pen Grün
Global $hPen_White = _GDIPlus_PenCreate(0xFFFFFFFF) ;Pen Weiß
Global $hBrush_Black = _GDIPlus_BrushCreateSolid(0xFF000000) ;Für den schwarzen Hintergrund
Global $i1_Start_X = 0, $i1_End_X = $iWidth ;X Start & X Ende für Linie 1
Global $i1_Start_Y = 0, $i1_End_Y = $iHeight ;Y Start & Y Ende für Linie 1
Global $i2_Start_X = $iWidth, $i2_End_X = 0 ;X Start & X Ende für Linie 2
Global $i2_Start_Y = $iHeight, $i2_End_Y = 0 ;Y Start & Y Ende für Linie 2
Global $hGui = GUICreate("GDI+", $iWidth, $iHeight) ;Gui erstellen
GUISetOnEvent(-3, "_Exit") ;Bei Klick auf X (Schliessen), Funktion _Exit aufrufen
GUISetState() ;Gui anzeigen
Global $hWnd = _GDIPlus_GraphicsCreateFromHWND($hGui) ;HWND für _GDIPlus_* - Funktionen bekommen
AdlibRegister("_Draw", 25) ;Funktion zum Zeichnen jede 25 MS aufrufen
_GDIPlus_GraphicsFillRect($hWnd, 0, 0, $iWidth, $iHeight, $hBrush_Black) ;Hintergrund malen
[/autoit] [autoit][/autoit] [autoit]While 1
Sleep(10) ;Damit das Programm am laufen bleibt
WEnd
Func _Draw()
_GDIPlus_GraphicsDrawLine($hWnd, $i1_Start_X, $i1_Start_Y, $i1_End_X, $i1_End_Y, _GetRandomPen()) ;Linie 1 zeichnen
_GDIPlus_GraphicsDrawLine($hWnd, $i2_Start_X, $i2_Start_Y, $i2_End_X, $i2_End_Y, _GetRandomPen()) ;Linie 2 zeichnen
$i1_Start_X += 10 ;Ein bisschen Rechnen
$i1_End_X -= 20 ;Ein bisschen Rechnen
$i1_Start_Y += 30 ;Ein bisschen Rechnen
$i1_End_Y -= 40 ;Ein bisschen Rechnen
$i2_Start_X -= 10 ;Ein bisschen Rechnen
$i2_End_X += 20 ;Ein bisschen Rechnen
$i2_Start_Y -= 30 ;Ein bisschen Rechnen
$i2_End_Y += 40 ;Ein bisschen Rechnen
EndFunc
Func _GetRandomPen()
Switch Random(1, 4, 1)
Case 1
Return $hPen_Red
Case 2
Return $hPen_Yellow
Case 3
Return $hPen_Green
EndSwitch
Return $hPen_White
EndFunc
Func _Exit()
_GDIPlus_BrushDispose($hBrush_Black) ;Brush releasen
_GDIPlus_PenDispose($hPen_Red) ;Pen releasen
_GDIPlus_PenDispose($hPen_Yellow) ;Pen releasen
_GDIPlus_PenDispose($hPen_Green) ;Pen releasen
_GDIPlus_PenDispose($hPen_White) ;Pen releasen
_GDIPlus_GraphicsDispose($hWnd) ;HWND freigeben
_GDIPlus_Shutdown() ;GDI+ beenden
Exit
EndFunc
Lg, Blume