So Emulieren Sie Einen Klick

Inhaltsverzeichnis:

So Emulieren Sie Einen Klick
So Emulieren Sie Einen Klick

Video: So Emulieren Sie Einen Klick

Video: So Emulieren Sie Einen Klick
Video: Excel-Makro für Datum- und Uhrzeitauswahl erstellen (inklusive verknüpftem Button) - carinko.com 2024, April
Anonim

Manchmal erfordert das Skript eines Skripts oder Programms die Nachahmung einiger Benutzeraktionen - zum Beispiel das Drücken einer Taste oder das Klicken mit der Maus auf ein Element. Dies kann entweder durch die eingebauten Mittel der Programmiersprache, in der das Programm geschrieben ist, oder über eine spezielle Schnittstelle des Betriebssystems realisiert werden. Eine solche Schnittstelle ist für die Interaktion von Anwendungsprogrammen mit Systemprogrammen gedacht und wird API - Application Programming Interfaces genannt.

So emulieren Sie einen Klick
So emulieren Sie einen Klick

Anleitung

Schritt 1

Finden Sie heraus, ob die Sprache, die Sie zum Schreiben des Programms oder Skripts verwenden, über eine integrierte Tastenanschlag-Emulation verfügt. In JavaScript wird beispielsweise die linke Maustaste mit einer Methode simuliert, die an bestimmte Elemente der Benutzeroberfläche gebunden ist. Um beispielsweise das Drücken der linken Maustaste zu emulieren, während sich der Cursor über einer Schaltfläche namens autoClkButton befindet, die in einem Formular namens autoClkForm platziert ist, müssen Sie das Konstrukt document.autoClkButton.autoClkForm.click() verwenden. In dieser Sprache haben nicht nur Schaltflächen (Button, Reset, Submit) eine click()-Eigenschaft, sondern auch Select-Elemente - Checkbox und Radio.

Schritt 2

Verwenden Sie die externe keybd_event-Funktion, wenn die von Ihnen verwendete Sprache nicht über die integrierten Tools verfügt, die Sie benötigen, um alles automatisch zu erledigen. Dies ist eine Win32-API-Funktion. Um von Ihrem Programm darauf zugreifen zu können, sollten Sie am Anfang Ihres Codes einen Block platzieren, der die Funktionen der externen Bibliothek importiert. Dies sollte in Übereinstimmung mit der Syntax der verwendeten Softwareumgebung erfolgen. In der Terminalprogrammiersprache MQL (MetaQuotes Language) für den Aktienhandel sollten Sie beispielsweise zum Aufrufen von Funktionen aus der Systembibliothek user32.dll die folgenden Zeilen an den Anfang des Codes setzen: #import "user32.dll" bool keybd_event (int bVk, int bScan); #import Danach kann die im Importblock deklarierte keybd_event-Funktion verwendet werden.

Schritt 3

Keybd_event hat vier Parameter. Der erste (bVk, Datentyp BYTE) kann einen von 255 Werten annehmen und gibt die Taste an, die beim Drücken simuliert wird. Welche dieser Werte dem benötigten Schlüssel zugeordnet ist, erfahren Sie auf dieser Seite - https://msdn.microsoft.com/en-us/library/windows/desktop/dd375731(v=vs.85).aspx. Der zweite Parameter (bScan, Typ BYTE) ist der „Scancode“, der beim Drücken der ausgewählten Taste generiert wird. Der dritte (dwFlags, Typ DWORD) kann einen oder beide seiner bereitgestellten Werte annehmen (KEYEVENTF_EXTENDEDKEY und KEYEVENTF_KEYUP). Der erste zeigt an, dass ein erweiterter Tastencode generiert wird, und der zweite zeigt an, dass die Taste gedrückt und dann losgelassen wurde. Der vierte Parameter (dwExtraInfo, Typ ULONG_PTR) kann zusätzliche schlüsselspezifische Flags enthalten.

Empfohlen: