Tutorial - 4
Übersicht 
Anwendung 
Referenzen 
Bestellung 
Download 
Kontakt 
Links 

Worum geht es?

In der letzten Übung wurde ein Tastatur-Shortcut für eine nur per Maus erreichbare Programmfunktion erstellt.
Manchmal macht es aber auch Sinn, Shortcuts zu definieren, die mit der Maus ausgelöst werden (z. B. für nur umständlich erreichbare Schachtel-Menüs).

Man kann etwa Symbolleisten-Schaltflächen oder die Einträge der Menü-Zeile mit zusätzlichen Funktionen belegen, die dann gezielt per rechtem Mausklick ausgelöst werden.

Die folgende Übung ist ein Beispiel, wie sogar eigene Programmfunktionen in Anwendungen nachgerüstet bzw. ein Workaround dafür implementiert werden kann:
Wenn man z. B. mit dem Windows-Editor Skripte entwickelt (wie in der letzten Übung), so wäre die Programmfunktion "Zeilennummerierung" sehr nützlich. Im Fehlerfall gibt der Scripting Host nämlich eine Meldung mit der fehlerhaften Zeilennummer aus.

Eine Ersatzfunktion hierfür schaffen wir in der folgenden Übung. Die neue Funktion soll über einen rechten Mausklick auf das Bearbeiten-Menü des Editors ausgelöst werden.

Übung 4:  Zeilennummerierung im Windows Editor nachrüsten

Für diese Übung öffnen Sie den Windows-Editor unter Start/Programme/ Zubehör/Editor.

Dann öffnen Sie das Workarounder-Hauptfenster und legen in der Registerkarte "Maus" einen neuen Ereignisdatensatz an.
Dort öffnen Sie per Rechtsklick das Kontextmenü für ein Koordinaten-Eingabefeld und wählen die Option "mit Bildschirmlupe ermitteln", wie in nachfolgender Abbildung gezeigt:
 

 

 

 

 

 


Daraufhin öffnet sich die Bildschirmlupe, in der Sie Folgendes vornehmen:

  1. Selektieren Sie im Auswahlfeld den Titel des Editor-Fensters.
  2. Ziehen Sie die Schaltfläche "Auf Bildschirmausschnitt ziehen" mit gedrückter Maustaste auf das Bearbeiten-Menü des Editor-Fensters.
    Die linke obere Ecke des gewählten Bildschirmausschnittes soll mit der linken oberen Ecke des Bearbeiten-Menüs übereinstimmen. (Eine Feinjustierung können Sie über die Eingabefelder "Position" vornehmen.)
  3. Passen Sie nun über die Eingabefelder "Größe" den Bildschirmausschnitt so an, so dass er mit dem Bereich des Bearbeiten-Menüs übereinstimmt.
  4. Durch Klick auf die Schaltfläche "Fertig" schließen Sie die Bildschirmlupe und übernehmen die eingestellten Werte in den Ereignisdatensatz.

Den Ereignisdatensatz bearbeiten sie abschließend wie folgt:

  • Kürzen Sie den Eintrag "Unbenannt - Editor" auf "- Editor".
    In Verbindung mit der Option "Fragment" gilt der Ereignisdatensatz dadurch für beliebige Dokumente, die im Editor geöffnet sind.
  • Wählen Sie die Option "Rechts". Ein rechter Mausklick auf das Bearbeiten-Menü wird dadurch zum Auslöser der Aktion.
  • Aktivieren Sie die Option "abfangen". Dies bewirkt, dass die Anwendung von dem Mausklick, der die Aktion auslöst, nicht benachrichtigt wird.
    (In Verbindung mit "Links" würde dies zu einer Sperrung des Bearbeiten-Menüs führen.)
  • Wählen Sie das Beispielskript "Findline.vbs" aus dem Unterverzeichnis "Sonstiges" über die Auswahllisten rechts im Ereignisdatensatz.
  • Aktivieren Sie den Datensatz.


Der fertige Ereignisdatensatz sollte wie folgt aussehen:
 

 

 


Nachdem Sie das Workarounder-Hauptfenster geschlossen haben, wird das soeben definierte Ereignis überwacht und bei Rechtsklick auf das Bearbeiten-Menü des Editors ausgelöst.

Das Skript Findline.vbs öffnet ein Dialogfenster, in dem Sie die Nummer der gesuchten Textzeile vorgegeben. Nach dem Schließen des Dialogfensters wird diese Zeile im Text des Editorfensters markiert. (Vorausgesetzt, Ihr Text im Editor verfügt über entsprechend viele Zeilen.)

Variante: Auslösung der Funktion per Tastenkombination

Wenn Sie den folgenden Ereignisdatensatz in der Registerkarte "Tastatur" anlegen, können Sie die Ersatzfunktion zur Zeilennummerierung auch mit der Tastenkombination Alt+z im Editor auslösen.
Hier ist die Option "abfangen".notwendig
 

 
 

 

Fazit:

Mausklicks auf Schaltflächen oder Menüs von Anwendungen können zum Auslöser von benutzerdefinierten Aktionen gemacht werden.
Die Koordinaten für den relevanten Bildschirmausschnitt können mit der Bildschirmlupe sehr einfach bestimmt und in einen Ereignisdatensatz der Maus-Registerkarte eingefügt werden.
Durch die Option "abfangen" kann die Weiterleitung der Mausklicks an die Anwendungen unterdrückt und die ursprüngliche Funktion des jeweiligen Bedienelements ggf. gesperrt werden.
Als benutzerdefinierte Aktion kommen selbstentwickelte neue Funktionen oder aber auch Shortcuts für bereits vorhandene Programmfunktionen in Frage, die z. B. durch eine Folge von simulierten Tastendrücken angesteuert werden können.

Dem Thema "Selbstentwicklung von komplexeren Funktionen für Ihren speziellen Bedarf" nähern wir uns in der nächsten Übung an. Dazu behandeln wir das Thema "Zwischenablage" und auch die entsprechende Registerkarte des Hauptfensters.
Sie erhalten dabei weitere Informationen über den Einsatz von Automatisierungsobjekten in Skripten und einige abschließende Hinweise zur Handhabung von Ereignisdatensätzen im Workarounder-Hauptfenster.

 

 

 

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

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