ich hab ein GUI mit einem grafik Element und will ich und nun möchte ich nach dem Abarbeiten des scriptes die Farbe des elements ändern. (ohne dabei idealerweise die komplette GUI neu aufbauen zu müssen - Denn es sind noch etliche andere Elemente drin und Fenstergröße und Position müsste ich sonst ja noch alles erfassen)
folgendes Mini File solte jedenfalls zeigen was ich mein
Spoiler anzeigen
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
Global $msg, $Button_2,$combo,$grafic_field_1, $grafic_field_2,$Gui,$label
global $color= "0xff0000"
$gui =GUICreate("My GUI")
GUICtrlCreateButton("text",10,10)
$label= GUICtrlCreateLabel($color,150,50,100,100)
$grafic_field_1= GUICtrlCreateGraphic(70, 50, 50, 50, 0)
$grafic_field_2 =GUICtrlSetBkColor(-1,$color)
GUISetState()
While 1
$msg = GUIGetMsg()
If $msg = $GUI_EVENT_CLOSE Then ExitLoop
if $msg = 3 Then
$color="0xffff00"
GUICtrlSetData($label,$color)
;GUICtrlSetData($grafic_field_2, 0xffff00, 0xffff00)
;GUICtrlSetGraphic($grafic_field_2, $GUI_GR_COLOR, 0xffff00, 0xffff00)
;GuiCtrlSetGraphic($grafic_field_2, $GUI_GR_REFRESH)
;GUISetState($Gui)
EndIf
WEnd
Exit
Mit einem klick auf den Button ändert sich zwar das Label, aber nicht die Grafik, obwohl beide auf die selbe variable zugreifen.
Mit den 4 kommentarzeilen ( ; ) hab ich schon mal ein wenig experimentiert -
aber ich glaub der Befehl GuiCtrlSetGraphic ist nicht richtig
hat jemand eine idee? Forensuche hat jedenfalls nicht das eroffte ergebnis gebracht