Hi leute!
Ich hab mal ein problem: nämlich möchte ich ein Progrämmelchen erstellen, das farbübergänge von vier ecken Berechnet und das dann in einer GUI darstellt. Werte kommen raus (vermutlich noch falsch aber das kommt noch) aber dargestellt werden sie nicht.
Ich bitte um Hilfe.
Spoiler anzeigen
#include <WindowsConstants.au3>
#include <GUIConstantsEx.au3>
#include <Color.au3>
#include <Array.au3>
$hGUI=GUICreate("Color Mutation",300,80,0,0)
GUICtrlCreateLabel("Start Color (hex)",0,3,100,20)
$start=GUICtrlCreateInput("",100,0,200,20)
GUICtrlCreateLabel("End Color (hex)",0,23,100,20)
$end=GUICtrlCreateInput("",100,20,200,20)
GUICtrlCreateLabel("Parts (int)",0,43,100,20)
$parts=GUICtrlCreateInput("",100,40,200,20)
$run=GUICtrlCreateButton("Start mutation",0,60,300,20)
$Newgui=1234
GUISetState()
While True
$msg=GUIGetMsg()
If $msg=$run Then
GUIDelete($Newgui)
If True Then
$startColor=GUICtrlRead($start)
$endColor=GUICtrlRead($end)
$partsNumber=GUICtrlRead($parts)
$startRGB=_ColorGetRGB($startColor)
$endRGB=_ColorGetRGB($endColor)
$rStep=($startRGB[0]-$endRGB[0])/$partsNumber
$gStep=($startRGB[1]-$endRGB[1])/$partsNumber
$bStep=($startRGB[2]-$endRGB[2])/$partsNumber
Dim $Colors[$partsNumber+1]
$Colors[0]=$partsNumber
Dim $TempColors[3]
For $i=1 To $partsNumber
$TempColors[0]=$startRGB[0]-($rStep*$i)
$TempColors[1]=$startRGB[1]-($gStep*$i)
$TempColors[2]=$startRGB[2]-($bStep*$i)
$Colors[$i]=StringTrimRight(StringFormat("%#06x\t",_ColorSetRGB($TempColors)),1)
Next
$Newgui=GUICreate("",$partsNumber,100,-1,-1,$WS_POPUP)
Dim $Graphic[$partsNumber+1]
$Graphic[0]=$partsNumber
For $i=1 To $partsNumber
$Graphic=GUICtrlCreateGraphic($i-1,0,1,100)
GUICtrlSetBkColor($Graphic,$Colors[$i])
Next
$Graphic=""
GUISetState()
EndIf
EndIf
If $msg=$GUI_EVENT_CLOSE Then Exit
WEnd
Schon mal danke im Vorraus.