Hi,
ich habe noch eine grafische "Unschönheit", die ich gerne bereinigen möchte.
Ich erzeuge mehrere Buttons, wie z.B. den Exit-Button hier. Der Bekommt schön die rote Farbe zugewiesen. Siehe auch der Screenshot...
;### Exit button
$ExitButton = GUICtrlCreateButton('Exit', ($iFullDesktopWidth - 210), 40, 100, 60, 0,$WS_EX_CLIENTEDGE)
GUICtrlSetBkColor(-1, 0xCC3300)
GUICtrlSetFont(-1, 10, 1000, 0, $font, 5)
Ein paar andere Buttons sollen aber die Farbe ändern, sobald ein bestimmter Status erlangt wurde.
Der Connect-Button, der hier noch in der Standart-Farbe dargestellt wird. Dass der hier noch auf Disabled steht ist gewollt. Um die Verbindung herstellen zu können, müssen halt ein paar Parameter innerhalb des Programmablaufes gegeben sein. Das funktioniert auch so weit.
;### Button to Screenshot
$screenshotButton = GUICtrlCreateButton('Screenshot not available', ($iFullDesktopWidth - 210), 300, 100, 60, $BS_MULTILINE, $WS_EX_CLIENTEDGE)
GUICtrlSetState(-1, $GUI_DISABLE) ;### ...disabled until USB-Connection is stable.
GUICtrlSetFont(-1, 9, 500, 0, $font, 5)
soll später dann auf "grün" wechseln, wenn die Telnet-Verbindung aufgebaut wurde.
Dann blende ich den Button weg und lege einen neuen eigentlich grünen Button darüber, weil mit der reinen GUICtrlSetBkColor($ConnButton, 0x00FF00) wird mir der Buttontext zerschossen.
$BS_MULTILINE, $WS_EX_CLIENTEDGE wird dann nämlich anscheinend "vergessen"
;### Screenshot-Button if connected to target
GUICtrlSetState($ScreenshotButton, $GUI_HIDE)
$ConnButtonconnected = GUICtrlCreateButton('Take Screenshot', ($iFullDesktopWidth - 210), 300, 100, 60, $BS_MULTILINE, $WS_EX_CLIENTEDGE)
GUICtrlSetBkColor(-1, 0x00FF00) ; Green
GUICtrlSetFont(-1, 9, 500, 0, $font, 5)
GUICtrlSetState(-1, $GUI_DISABLE)
... und so sieht das dann aus, wenn ich den TakeScreenshotButton so verarbeite. Der "Connected-Button ist hier als Standart-Button generiert, da funktioniert der Farbwechsel.
Was mache ich falsch???