Input Event Recorder

Der Input Event Recorder (auch als Macro Recorder bekannt) zeichnet Maus- und Tastatur-Events in Laufzeit-Panels auf und erstellt CTRL-Skripte zur automatisierten Wiedergabe. Verwenden Sie ihn zur Erstellung automatisierter Testsequenzen und wiederholbarer Arbeitsabläufe.

Abbildung 1. Input Event Recorder Start/Stop im Tools Menü

Der Input Event Recorder ist dazu gedacht zur Laufzeit für Panels in VISION-Modulen verwendet zu werden, und sollte daher nicht für GEDI Vorgänge benutzt werden. Innerhalb des GEDI-Moduls wird mit dem Erweiterungsskript inputRecorder_ext.ctl die "Maus/Tastatur Eingaben Aufzeichnung" dem Tools Menü hinzugefügt. Sie kann auch über die Tastenkombination "CTRL"+ "Shift" + "R" erreicht werden.

Der Input Event Recorder verwendet Maus und Tastatur-Events, erstellt daraus CONTROL Skript-Aufrufe und speichert diese im internen Speicher bis die Aufnahme beendet wird. Wenn die Aufzeichnung wieder über das Tools-Menü beendet wird, wird ein neues Panel erstellt, in welchem das resultierende Skript platziert wird. Die "play()" Funktion in der ScopeLib dieses Panels wird verwendet, um die aufgenommenen Events wieder abzuspielen. Ausführen der Funktion startet automatisch das Abspielen.

Anmerkung:
Das resultierende Skript sollte dennoch überprüft werden. Die letzten Events können entfernt werden, da sie darauf hinweisen, dass die Aufzeichnung beendet wurde. Diese Events werden natürlich ebenso aufgezeichnet, sind aber überflüssig.

Das Playback-Skript verwendet die Ctrl++ Klasse InputEventPlayer. Diese Klasse verwendet die "current shape", an welche die Events gesendet werden. Wenn keine Shape gesetzt ist (z.B.: mit clearCurrent()), werden die Events an das derzeitig aktive Popup oder Fenster gesendet. Dies ermöglicht eine flexiblere Adressierung, z.B.: die Adressierung eines Popup-Menüs von einem Rechtsklick. Der InputEventPlayer adressiert Objekte in einem Panel mit dem üblichen CONTROL-Syntax, und ist damit nicht auf die Funktionalität von z.B. Squish, welches QWidgets nur oberflächlich kennt, limitiert. Im Kontrast dazu kennen das WinCC OA UI und der WinCC OA Input Event Recorder alle Objekte eines Panels (z.B.: auch Primitive Objekte wie Linien, Rechtecke, usw.). Dies bringt allerdings die Limitierung mit sich, das nur Objekte in einem Panel adressiert werden können. Daher können GEDI-Menüfunktionen nicht mit dem Input Event Player verwendet werden. Diese werden deshalb auch nicht aufgezeichnet. Sollten GEDI-Funktionen aus dem Skript verwendet werden, kann triggerAction() verwendet werden. Hierbei wird der "Gedi_1" als zweites Argument adressiert.

Einschränkung:
Das Aufzeichnen von Drag&Drop Bewegungen wird zum momentanen Zeitpunkt nur unter Linux unterstützt.

Aufnahme Overlay

Das aktuell aufgezeichnete Modul wird durch einen Rahmen um die Ecke des Moduls hervorgehoben. Das Aussehen der Hervorhebung kann mit den Konfigurationseinträgen [ui] inputRecorderColor und [ui] inputRecorderLineType angepasst werden.