Zum Hauptinhalt springen

WinFocusSet

obj -> WinFocusSet([logic1]) : int

Ausführbar von Clients mit grafischer Oberfläche Ausführbar vom Server Ausführbar von der DLL-Schnittstelle mit grafischer Erweiterung Ausführbar von der Web-Schnittstelle Ausführbar vom Druckprozessor Ausführbar von der ODBC-Schnittstelle Ausführbar vom SOA-Service mit grafischer Erweiterung

Objekt mit Eingabefokus setzen

Details

  • obj: Zu fokussierendes Objekt
  • logic1: Ereignisaktivierung (optional)
  • Resultat: int Momentan fokussiertes Objekt
  • Siehe: Verwandte Befehle , TabPos

Dem Befehl wird das Objekt übergeben, auf den der Fokus gesetzt werden soll. Der Rückgabewert dieses Befehls ist entweder der Deskriptor des vorhergehenden Objekts oder der Wert 0. Ist der Wert 0, kann das unterschiedliche Ursachen haben. Zum einen kann das Objekt als nicht Visible oder als Disabled definiert worden sein, zum anderen kann das Objekt der Standardclient sein oder einem anderen Prozess gehören.

Durch die Übergabe der Konstanten _StandardClient kann der Fokus auf den textbasierten Standardclient gesetzt werden.

Es ist zu beachten, dass ein Objekt nicht den Fokus erlangen kann, wenn es nicht sichtbar (Visible = false) oder gesperrt (Disabled = true) ist. Unterstützt ein Objekt keine Eingabe (zum Beispiel das Objekt Label ), kann es ebenfalls keinen Fokus bekommen.

Mit dem optionalen Parameter (logic1) können während der Verarbeitung eines Ereignisses weitere Ereignisse unterdrückt (logic1 = false oder Parameter nicht angeben) werden. Wird in einer Funktion, die durch EvtFocusTerm aufgerufen wurde, der Fokus neu gesetzt, ist das nächste Ereignis das EvtFocusInit des neuen Eingabeobjekts.

Beispiel:

// Fokus auf Objekt '$edCltNo' setzen
$edCltNo->WinFocusSet();
info

Der Befehl kann ebenfalls in dem Ereignis EvtInit eines Frame -Objekts aufgerufen bzw. zwischen dem Laden des Dialogs mit WinOpen () und dem Anzeigen mit WinDialogRun () durchgeführt werden. Da zu diesem Zeitpunkt ein Fokus nicht zugewiesen werden kann, erfolgt die Ausführung des Befehls verzögert. Der Rückgabewert des Befehls ist dann immer 0 .

Mögliche Laufzeitfehler: