Nachdem eine ziemlich lange Erklärung von mir am Freitag an meinem Router gescheitert ist, hier noch mal eine Version.
Wie man so schön auf sagt: Been there, donne that.
Es ist wirklich kein Problem dies mit den Tastenfunktionen zu machen. Ich habe schon einige Anwendungen damit geschrieben und gerade die haben mir eigentlich nie Probleme bereitet.
Ich hatte mal den Auftrag eine Bestellungsanwendung für den Aussendienst so zu bauen, dass alle normalen Aktionen mit der Tastatur aufzurufen waren und dann war da noch eine eingebettete Ansicht mit Aktionsleiste usw. auf der Maske. Alles drehte sich darum, den Fokus oder die Cursorposition auf der Maske im richtigen Moment an der richtigen Stelle zu haben. Rinn in die eingebettete Ansicht, raus aus der Ansicht. Ohne diese Möglichkeit der Tastenkombinationen, war es schlicht (in Notes) nicht zu machen.
Es gibt allerdings so ein paar Sachen die man beachten soll.
Nach dem Aufruf von Tasten, darf man keine anderen Programmteile mehr haben, die irgend etwas mit den Tastenkombinationen zu tun haben, z.B. das Dokument öffnen, auf das man den Fokus in einer Ansicht gesetzt hat, weil Windows die Tastenkombinationen nicht so schnell abarbeitet, wie das Programm abläuft. Soweit ich festgestellt habe, wird im Programm keine Rückmeldung von Windows erwartet. D.h. es kommt zu Fehlern, weil sich Programmteile überschneiden. Ich habe mir damit beholfen, dass ich in den Programmen mit den Tastenkombinationen wiederum Aktionen auf der Maske (z.B. ein gut versteckter Hotspot) mittels Tastenkombinationen aufgerufen habe. Damit war die Sequenzierung gewährleistet. Solche Verschachtelungen sollte man nicht übertreiben, aber es funktioniert bis heute einwandfrei.
Man muss für jede Clientsprachversion ein eigenes Programm schreiben.
Keine Ahnung was bei Apple läuft.
Kommentieren auf Teufel komm raus, sonst kriegt die arme Sau die das später mal warten soll einen Koller.
Noch ein Trick: Mit den Pfeitasten kann man den Focus im Dokument ganz an den Anfang setzen und dann von da aus die richtige Sequenz starten. Es ist also gar nicht nötig zu wissen, wo der Cursor gerade ist, sondern man muss ihn nur an den Anfang setzen. Als ich das raus hatte, war der Rest einfach.
Man sollte es wenn möglich vermeiden die Alt- (bzw. Menu)Taste zweimal kurz hintereinander zu verwenden. Die spinnt irgendwie, bzw. da läuft etwas mit Zeitverzögerung ab.
Es ist zwar ein elendes Gefummle, bis man es zusammen hat, aber für so gefährlich wie meine Vorredner halte ich es nicht. Meine Erfahrung ist zumindest ohne Ausnahme positiv.
Für die Benutzer war es meistens eine riesige Erleichterung ihrer Arbeit. Sie hätten sonst immer wieder dieselben Tastenkombinationen verwenden müssen und zwar richtig viele. Im Bereich Ui hat Notes nun mal einige Beschränkungen, die mühsam und teilweise auch unverständlich sind, aber mit den Key Events kann man sich da behelfen.
Ein Beispiel findet man
hier.Viel Spass.
cti