Frage

In einer C # WinForms-Anwendung (auf .NET 3.5, wahrscheinlich 4.0 soonish), wie Sie es dem Benutzer ermöglicht gehen würde, ihre eigenen Makros zu definieren? Zum Beispiel könnte ein Benutzer die Taste drücken Sie STRG + K möchte einen bestimmten Punkt im Menü bedeuten klicken und einen Text in dem vom Menü geöffnet Dialog eintritt, bevor „Ok“ schließen Sie den Dialog drücken.

Im Idealfall könnte unsere Software bieten eine Makro-Aufnahme-Funktionalität, die es einem Benutzer ermöglichen würde, nur die Aufnahme zu starten, führen Sie die gewünschten Aufgaben, und das Stoppen der Aufnahme eines Makros zur Verfügung zu haben. Dies ist ein Merkmal, dass sie verwendet werden, um von der alten Version der Software, die in FoxPro geschrieben wurde, ein Werkzeug, das solche Fähigkeiten hat eingebaut.

Die beste Option für uns eindeutig zu erwerben würde und eine bewährte Dritte Bibliothek von einigen Arten verwendet, aber Ideen für unsere eigene Version rollen werden auch geschätzt.

Keine korrekte Lösung

Andere Tipps

Wenn ich auf so etwas wie diese funktionierten, würde ich vielleicht ein Allzweck-Eventhandler integrieren Ereignisse zu protokollieren, dass Sie beschreibbare (vielleicht entweder sein wollen als ein einzelner Handler verfügbaren Schaltflächen hinzugefügt oder durch eine RecordedEventHandler Klasse erstellen zu erweitern Eventhandler und dann Subklassen alle Ihre Veranstaltung von der Handhabung - das ist nur top-of-the-Kopf Ideen, damit ich nicht in die praktikabelste wäre ausgesehen haben) und nur die „Makro aufzeichnen“, um als Schalter für diese Verwendung. Es gibt wahrscheinlich nur ein paar verschiedene Arten von Ereignissen zu sein, dass Bedarf aufgezeichnet werden - Schaltfläche klickt, Tastatureingabe auf beliebige Textfeldern, Tastenkombinationen und Mauseingaben auf beliebigen Maus-Eingabefeldern, so ist es nicht eine enorm anstrengend Aufgabe obwohl natürlich Arbeits Sie heraus, wie zu speichern und zu binden Makros und wie Import und Export zu erleichtern, wenn Sie, dies zu tun geneigt wurden, ist zeitaufwendig, aber nicht technisch anspruchsvoll. Ich weiß nicht von irgendwelchen Bibliotheken für diesen Zweck und darüber nachzudenken (obwohl ich einige exist erwarten) Ich bin sicher, dass nicht, wie einfach es wäre, so etwas zu integrieren, weil die meisten Bedürfnisse der Menschen in Bezug auf den Makros sind wahrscheinlich zu sein anders aus.

Wenn Sie in der Lage sein benötigt Veranstaltungen rund um Ihre Anwendung anmelden, dann können Sie finden die ManagedWinApi sein hilfreich.

Ich habe gute Erfahrungen mit „Befehl-Entwurfsmuster“ für Makro-Aufnahme functionaly. Jeder Befehl Feuer einige applikationsweit (statisch zum Beispiel) Veranstaltung mit Informationen Abou Parameter etc ... Der Recorder auf dieses Ereignis zu hören und die Reihenfolge der Befehls Berufung bestehen bleiben.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top