Tutorial - 2
Übersicht 
Anwendung 
Referenzen 
Bestellung 
Download 
Kontakt 
Links 

Worum geht es?

In der vorangegangenen Übung wurde gezeigt, wie man beim Erscheinen eines Fensters eine Schaltfläche automatisch über eine Tastaturausgabe betätigt. (Die Steuerung von Bedienelementen mit Tastatur-Shortcuts ist oft am einfachsten zu realisieren.)

In bestimmten Fällen sind aber weitergehende Techniken erforderlich, für die Sie die Bildschirmlupe von Workarounder einsetzen können:

  1. Manchmal sind  Bedienelemente nicht über Tastenkürzel ansteuerbar, dies ist z. B. häufig in Web-Anwendungen der Fall.
    Dann kann die Anwendung über automatische Mausklicks gesteuert werden.
  2. Oft soll eine Aktion nur dann ausgeführt werden, wenn die Anwendung in einem bestimmten Zustand ist, z.B.:
    • Reaktion der Anwendung abwarten. Z. B. Mausklick erst nachdem die Webseite komplett geladen und "empfangsbereit" ist.
    • Aktion nur, wenn Bedienelement in einem bestimmten Zustand. Beispiel: Anwählen einer Option nur dann sinnvoll, wenn diese noch nicht aktiv.
    • Ortsveränderliche Bedienelemente erfordern Mausklicks, die an die aktuelle Position des Bedienelementes angepasst sind. Z.B.: Klick auf Elemente einer verschiebbaren Symbolleiste.

In dieser Übung wird am Beispiel des Windows-Taschenrechners ein Fall der 1. Kategorie mit Hilfe des Beispielskripts ClickApp.vbs gelöst.
In der darauf folgenden Übung wird dieses Beispiel ausgebaut und ein Skript erstellt, das die Anforderungen der 2. Kategorie erfüllt.

Übung 2: Automatischer Mausklick auf Schaltfläche

Der Windows-Taschenrechner hat einen praktischen Speicher, in dem man häufig benötigte Zahlenwerte ablegen kann (Taste MS). Mit der Taste MR holt man diese Werte dann bei Bedarf wieder zurück in die Anzeige.
In unserem Übungsbeispiel rüsten wir Tastenkürzel für diese Funktionen nach, so dass man den Speicher auch bedienen kann ohne ständig zwischen Maus und Tastatur zu wechseln.

Dazu öffnen wir zunächst den Windows Taschenrechner (unter Start/alle Programme/Zubehör/Rechner) und dann die Bildschirmlupe (zum Beispiel über das Tools-Menü Hauptfenster).
Für dieses Beispiel reicht die in der nachfolgenden Abbildung dargestellte einfache Ansicht der Bildschirmlupe (siehe Ansicht-Option unten links):

  1. Wählen Sie den Titel des zu automatisierenden Fensters in der Auswahlliste(alle in diesem Fall "Rechner").
  2. Klicken Sie auf die Schaltfläche "Auf Bildschirmausschnitt ziehen" und ziehen Sie die Schaltfläche mit gedrückter Maustaste auf die Schaltfläche MS  des Rechners.
  3. Mit der rechten Maustaste öffnen Sie wie abgebildet das Kontextmenü eines Eingabefeldes für den zentralen Pixel und wählen die Option "Koordinaten des Pixels & Fenstertitel kopieren". Ihre Einstellungen werden dadurch in die Zwischenablage kopiert. (Siehe Schritt 7 der nächsten Abbildung.).
  4. Schließen Sie die Bildschirmlupe.
     

 

 

 

 

 

 
 


Nach dem Schließen der Bildschirmlupe legen Sie in der Registerkarte "Tastatur" über die Schaltfläche "Neues Ereignis" einen Datensatz gemäß nachfolgender Abbildung an:
 

 

 

 
  1. Als Titel des aktivien Fensters wird eingegben bzw. per Rechtsklick über die Fensterliste ausgewählt: "Rechner"
  2. Die Pfeil-nach-oben-Taste soll überwacht werden und den Klick auf die Schaltfläche MS auslösen. Drücken Sie also im Eingabefeld die Pfeil-nach-oben-Taste Ihrer Tastatur: Es erscheint das entsprechende Kürzel "UP".
  3. Durch Aktivieren des Kontrollkästchens "abfangen" erreicht man, dass die Anwendung die zu überwachende Tastatureingabe nicht erhält und keine eigene Reaktion zu dieser Tastatureingabe produzieren kann.
  4. In der Auswahlliste für den Skript-Pfad wählen Sie das Unterverzeichnis "Mausklicks".
    Das nebenstehende Kontrollkästchen "Filter"aktiviert sich dadurch, sobald Sie  in die Auswahlliste für das Skript wechseln. Dort werden nun nur die Skripte angezeigt, die etwas mit Mausklicks zu tun haben.
  5. Selektierten Sie das Skript "ClickApp.vbs". Dieses Skript führt ein Mausklick aus, dessen Zielkoordinaten über Parameter anzugeben sind.
  6. Aktivieren Sie den Ereignisdatensatz.
  7. Nach Aktivieren der Option "Par" öffnet sich das Eingabefenster für die Skriptparameter.
    Fügen Sie hier die zuvor per Bildschirmlupe kopierten Koordinaten aus der Zwischenablage ein (z. B. mit Strg+v, achten Sie dabei aber darauf, dass das Kontrollkästchen deaktiviert ist, wie in der Abbildung):
     

Nach dem Schließen des Hauptfensters bewirkt der abgebildete Datensatz Folgendes, sobald im Rechner-Fenster die Pfeil-nach-oben-Taste gedrückt wird:

  • Es wird ein linker Mausklick auf die angegebenen Fensterkoordinaten durchgeführt (35 Pixel rechts und 201 Pixel unterhalb der linken oberen Fensterecke).
  • Der im Rechner angezeigte Zahlenwert landet dadurch im Speicher.
Es wäre nicht verwunderlich, wenn sie sich nun die folgende Frage stellen:

Woher weiß man, was ein Beispielskript macht und welche Parameter es braucht?

Zum Einen finden Sie auf der Referenzkarte eine Tabelle der wichtigsten Beispielskripte mit kurzer Beschreibung ihrer Funktion und Parameter. (Die Referenzkarte ist ein PDF-Dokument, das Sie im Hilfemenü des Hauptfensters öffnen können.)

Zum Anderen finden Sie ausführliche Erläuterungen im Programmtext der Skripte. Wenn Sie in einem Datensatz ein Skript ausgewählt haben (siehe Hinweis 1) öffnet ein Doppelklick auf das Auswahlfeld den Quelltext des Skriptes im Editor.

Klicken Sie also einmal doppelt auf das Skript-Auswahlfeld. Dann sollten Sie den nachstehend abgebildeten Text im Editor erhalten:

 

 

In VisualBasic ist jeder Text, der mit einem "Hochkomma" (') anfängt, ein Kommentar. Die Die 1. Zeile mit einer Programmanweisung ist also:
Sekunden = 3
Alle Zeilen oberhalb sind Kommentarzeilen.

Die ersten dieser Kommentarzeilen erläutern in Beispielskripten üblicherweise deren Funktion und die Verwendung der Parameter (siehe hervorgehobener Bereich in der Abbildung).
Die Beispielskripte sind so gestaltet, dass auch Leerzeichen innerhalb eines Parameters möglich sind. Einzelne Parameter werden in der Regel durch ein |-Zeichen getrennt. (Dieses Zeichen erhalten Sie durch die Tastenkombination AltGr+< auf Ihrer Tastatur.)

In manchen Skripten finden Sie auch einen Abschnitt "Benutzerdefinierte Variablen".
Hier lässt sich der Programmtext des Skript auch ohne weitergehende Kenntnisse durch den Benutzer anpassen.

Im vorliegenden Beispiel können Sie die letzte der benutzerdefinierten Variablen auch wie folgt abändern:
Button= 2
Speichern Sie Ihre neue Version z.B. unter ClickAppR.vbs und schon haben Sie ein Skript, mit dem Sie bei Bedarf Rechtsklicks durchführen können.
Um das neue Skript in einem Ereignisdatensatz verwenden zu können, müssen Sie die Skript-Datei über die Schaltfläche "(Neues) Skript wählen" angeben (rechts unten im Hauptfenster). Dadurch wird das Skript in die Datenbank aufgenommen und ist später auch über die Skript-Auswahlliste verfügbar.

Fazit:

Fensterkoordinaten für Mausklicks können mit der Bildschirmlupe einfach ermittelt und in die Zwischenablage kopiert werden.
Die Übergabe dieser Parameter an das Skript "ClickApp.vbs" führt dann auf einfachem Weg zum Ziel, wenn ein Mausklick ohne Beachtung von weiteren Randbedingungen ausgeführt werden soll.
In der nächsten Übung sehen Sie, wie ein Mausklick auf eine ortsveränderliche Schaltfläche realisiert wird.
Ein  weiteres Anwendungsbeispiel zeigt einen bedingten Mausklick, der nur durchgeführt wird, wenn ein bestimmter Bildschirminhalt in einer Dialogbox vorgefunden wird.

Hinweis 1

Sie können ein Skript nicht nur per Doppelklick auf das Skript-Auswahlfeld im Editor öffnen, sondern auch über die folgenden Menü-Einträge:

  • per Rechtsklick über das Kontextmenü des Skript-Auswahlfelds
  • über das Skript-Bearbeiten-Menü des Hauptfensters

Standardmäßig öffnen Sie das Skript dadurch im Windows-Editor notepad.
Sie können aber auch unter Optionen\Zusatz-Tools einen anderen Editor angeben. Besonders vorteilhaft ist der kostenlos verfügbare OpenSource-Editor Notpad++. Mehr zur einfachen Installation und Konfiguration dieses Editors erfahren Sie im letzten Kapitel des Tutorials.

 

 

[Zurück][Nach oben][Weiter]

Copyright(c) 2007 Uta Nerger. Alle Rechte vorbehalten.