OnCommand

Registriert eine Funktion oder Methode, die aufgerufen wird, wenn eine Steuerelement­benachrichtigung via WM_COMMAND-Meldung empfangen wird.

GuiCtrl.OnCommand(NachrichtCode, Rückruf , HinzufügenEntfernen)

Parameter

NachrichtCode

Typ: Integer

Ein steuerelementdefinierter Benachrichtigungscode, der überwacht werden soll.

Rückruf

Typ: Zeichenkette oder Funktionsobjekt

Eine Funktion, eine Methode oder ein Objekt, die/das aufgerufen wird, wenn das Ereignis ausgelöst wird.

Wenn die GUI ein Event-Sink hat (d.h. wenn der EreignisObj-Parameter von Gui() angegeben wurde), kann dieser Parameter der Name einer Methode im Event-Sink sein. Andernfalls muss dieser Parameter ein Funktionsobjekt sein.

Die Rückruffunktion akzeptiert einen Parameter und kann wie folgt definiert werden:

MeinRückruf(GuiCtrl) { ...

Es spielt keine Rolle, welchen Namen Sie dem Parameter geben, allerdings wird ihm als Wert das GuiControl-Objekt des aktuellen GUI-Steuerelements zugewiesen.

Der Parameter der Rückruffunktion kann weggelassen werden, wenn die entsprechende Information nicht benötigt wird, aber dann muss ein Sternchen angegeben werden, z.B. MeinRückruf(*).

Die OnEvent-Hinweise bezüglich this und Bound-Funktionen gelten auch für OnCommand.

Wenn mehrere Rückruffunktionen für ein Ereignis registriert sind, kann eine Rückruffunktion einen nicht-leeren Wert zurückgeben, um zu verhindern, dass die restlichen Rückruffunktionen aufgerufen werden.

Der Rückgabewert der Rückruffunktion wird vom GUI-Steuerelement ignoriert.

HinzufügenEntfernen

Typ: Integer

Wenn weggelassen, wird standardmäßig 1 verwendet. Andernfalls geben Sie eine der folgenden Zahlen an:

WM_COMMAND

Bestimmte Steuerelemente senden eine WM_COMMAND-Meldung, wann immer ein interessantes Ereignis eintritt. In der Regel sind das Windows-Steuerelemente, die es schon lange gibt, da neuere Steuerelemente die WM_NOTIFY-Meldung verwenden (siehe OnNotify). Häufig verwendete Benachrichtigungscodes wurden in Ereignisse übersetzt, die ein Skript mit OnEvent überwachen kann.

Die Parameter der Meldung enthalten die Steuerelement-ID, das Fensterhandle (HWND) und den Benachrichtigungscode, die AutoHotkey verwendet, um die Benachrichtigung an die entsprechende Rückruffunktion zu senden. Es gibt keine weiteren Parameter.

Welche Benachrichtigungen es genau gibt (falls vorhanden), entnehmen Sie bitte der Dokumentation des Steuerelements. Control Library (Microsoft Docs) enthält Links zu jedem der gängigen Windows-Steuerelemente (allerdings verwenden nur wenige von ihnen WM_COMMAND). Die Benachrichtigungscodes (Nummern) können im Windows SDK oder durch Suchen im Internet gefunden werden.

Folgende OnEvent-Hinweise gelten auch für OnCommand: Threads, GUI zerstören.

OnNotify kann für Benachrichtigungen verwendet werden, die als WM_NOTIFY-Meldung gesendet wurden.