# Funktionsreferenz

GUISetOnEvent

Definiert eine vom Nutzer geschriebene Funktion, die aufgerufen wird, wenn ein Steuerelement angeklickt wird.

GUISetOnEvent ( specialID, "function" [, winhandle] )

Parameter

specialID | Siehe die ID-Tabelle unten.
function | Der Name der aufzurufenden Funktion.
winhandle | [optional] Fenster-Handle wie von GUICreate zurückgegeben (voreingestellt ist der vorher verwendete).

Bemerkungen

OnEvent-Funktionen werden nur aufgerufen, wenn die Option GUIOnEventMode auf 1 gesetzt ist - in diesem Modus wird GUIGetMsg überhaupt NICHT verwendet.
ID-Tabelle

Ereignis-ID | Bemerkungen
$GUI_EVENT_CLOSE | die Dialogbox wird geschlossen (entweder durch einen bestimmten Button oder das Systemmenü).
$GUI_EVENT_MINIMIZE | die Dialogbox wird per Schaltfläche in der Titelleiste minimiert.
$GUI_EVENT_RESTORE | die Dialogbox wird durch Klick auf das Taskleistensymbol wiederhergestellt.
$GUI_EVENT_MAXIMIZE | die Dialogbox wird per Schaltfläche in der Titelleiste maximiert.
$GUI_EVENT_MOUSEMOVE | der Mauszeiger hat sich bewegt
$GUI_EVENT_PRIMARYDOWN | die erste (linke) Maustaste wurde gedrückt
$GUI_EVENT_PRIMARYUP | die erste (linke) Maustaste wurde losgelassen
$GUI_EVENT_SECONDARYDOWN | die zweite (rechte) Maustaste wurde gedrückt
$GUI_EVENT_SECONDARYUP | die zweite (rechte) Maustaste wurde losgelassen

Siehe auch

GUIOnEventMode (Option), GUICtrlSetOnEvent

Beispiel

#include <GUIConstants.au3>
Opt("GUICoordMode",2)
Opt("GUIResizeMode", 1)
Opt("GUIOnEventMode", 1)
$parent1 = GUICreate("Parent1")
GUISetOnEvent($GUI_EVENT_CLOSE, "SpecialEvents")
GUISetOnEvent($GUI_EVENT_MINIMIZE, "SpecialEvents")
GUISetOnEvent($GUI_EVENT_RESTORE, "SpecialEvents")
$ok1 = GUICtrlCreateButton ("OK", 10, 30, 50)
GUICtrlSetOnEvent(-1, "OKPressed")
$cancel1 = GUICtrlCreateButton ( "Cancel", 0, -1)
GUICtrlSetOnEvent(-1, "CancelPressed")
GUISetState(@SW_SHOW)
; Just idle around
While 1
Sleep(10)
Wend
; END
Func OKPressed()
MsgBox(0, "OK Pressed", "ID=" & @GUI_CTRLID & " WinHandle=" & @GUI_WINHANDLE & " CtrlHandle=" & @GUI_CTRLHANDLE)
EndFunc
Func CancelPressed()
MsgBox(0, "Cancel Pressed", "ID=" & @GUI_CTRLID & " WinHandle=" & @GUI_WINHANDLE & " CtrlHandle=" & @GUI_CTRLHANDLE)
EndFunc
Func SpecialEvents()
Select
Case @GUI_CTRLID = $GUI_EVENT_CLOSE
MsgBox(0, "Close Pressed", "ID=" & @GUI_CTRLID & " WinHandle=" & @GUI_WINHANDLE)
Exit
Case @GUI_CTRLID = $GUI_EVENT_MINIMIZE
MsgBox(0, "Window Minimized", "ID=" & @GUI_CTRLID & " WinHandle=" & @GUI_WINHANDLE)
Case @GUI_CTRLID = $GUI_EVENT_RESTORE
MsgBox(0, "Window Restored", "ID=" & @GUI_CTRLID & " WinHandle=" & @GUI_WINHANDLE)
EndSelect
EndFunc