Hallo,
ich will über GDI+ eine Trendanzeige erstellen. Das Script hier ist noch rudmentär, also nur für mich zum testen wie's gehen könnte.
Ich bekomme auch eine Trendanzeige hin, aber immer wenn ich die Größe des Hauptfensters ädere oder das Fenster minimiere, und wieder herstelle verschwindet die mit GDI+ erstellt Grafik. Hat einer eine Idee dazu?
Spoiler anzeigen
#include <GDIPlus.au3>
#include <GUIConstants.au3>
#include <Array.au3>
Dim $arr1[1]
Dim $arr2[1]
_Main()
Func _Main()
Local $hGUI, $hWnd, $hGraphic, $hPen, $hGUIC
; Create GUI
$hGUI = GUICreate("GDI+", 800, 400,-1,-1,$WS_OVERLAPPEDWINDOW+$WS_CLIPSIBLINGS)
GUISetBkColor (0xE0FFFF)
GUICtrlCreateSlider(1,270,800,20)
GUISetState()
$hGUIC = GUICreate("child", 800, 200,1,50,$WS_CHILD,-1,$hGUI)
GUISetBkColor(0x4CAF98)
$hWnd = $hGUIC
GUISetState()
; Draw line
_GDIPlus_Startup ()
$hGraphic = _GDIPlus_GraphicsCreateFromHWND ($hWnd)
$hPenB = _GDIPlus_PenCreate (0xFF0000FF)
$hPenR = _GDIPlus_PenCreate (0xFFFF0000)
; _GDIPlus_GraphicsDrawLine ($hGraphic, 10, 150, 20, 120, $hPen)
$z = 0
$r = 120
$r2 = 120
For $i = 1 to 790 Step 1
$rnd = Random(100,150,1)
$rnd2 = Random(-50,50,1)
_ArrayAdd($arr1,$rnd)
_ArrayAdd($arr2,$rnd2)
GUICtrlCreateButton("",$i-2,$rnd-2,5,5)
GUICtrlSetTip(-1,$rnd)
_GDIPlus_GraphicsDrawLine ($hGraphic, $z, $r, $i, $rnd, $hPenB)
GUICtrlCreateButton("",$i-2,$rnd+$rnd2-2,5,5)
GUICtrlSetTip(-1,$rnd+$rnd2)
_GDIPlus_GraphicsDrawLine ($hGraphic, $z, $r2, $i, $rnd+$rnd2, $hPenR)
$z = $i
$r = $rnd
$r2 = $r+$rnd2
Next
Sleep(1000)
; Loop until user exits
Do
Until GUIGetMsg() = $GUI_EVENT_CLOSE
; Clean up resources
_GDIPlus_PenDispose ($hPen)
_GDIPlus_GraphicsDispose ($hGraphic)
_GDIPlus_Shutdown ()
EndFunc ;==>_Main
Schon mal Danke und Gruß rabbit