allerdings bekomme ich es nicht ganz hin, dass
es wieder rückgänig gemacht wird, wenn der Coursor nicht über de Control liegt.
Da hast du vergessen die Statusvariable zu verwenden, wie in $var's Skript zu sehen.
Hier mal kurz, ungetestet:
[autoit]#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
;~ $CheckboxHover = GUICtrlCreatePic("C:\Users\User\Documents\My\CheckboxHover.jpg", 64, 56, 54, 55)
$picOn = "C:\Users\User\Documents\My\CheckboxOn.jpg"
$picOff = "C:\Users\User\Documents\My\CheckboxOff.jpg"
$fState = False
$Form1 = GUICreate("Form1", 183, 165, 192, 124)
$Checkbox = GUICtrlCreatePic($picOff, 64, 56, 54, 55)
GUISetState(@SW_SHOW)
[/autoit][autoit][/autoit][autoit]While 1
$nMsg = GUIGetMsg()
$Pos = GuiGetCursorInfo()
Switch $Pos[4]
Case $Checkbox
If Not $fState Then
GUICtrlSetImage($Checkbox, $picOn)
$fState = True
EndIf
Case Else
If $fState Then
GUICtrlSetImage($Checkbox, $picOff)
$fState = False
EndIf
EndSwitch
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
EndSwitch
WEnd