
- Der Standardteil des Kontextmenüs ist der Teil, der in der Komponente standardmäßig angezeigt wird. Dieser Teil kann nicht geändert werden. Sie können ihn nur ein- oder ausblenden.
- Der benutzerdefinierte Teil des Kontextmenüs kann bearbeitet werden. Standardmäßig ist er leer. Sie können diesem Teil des Kontextmenüs beliebige für die Komponente verfügbare Standardbefehle oder beliebige benutzerdefinierte Befehle hinzufügen. Der benutzerdefinierte Teil des Kontextmenüs wird immer nach dem Standardteil angezeigt. Er kann außerdem aktiviert oder deaktiviert werden.

Verfügbare Befehle verwalten
- durch Auswählen eines Eintrags in einem Kontextmenü,
- durch Klicken auf eine Schaltfläche in der Symbolleiste,
- durch Drücken einer Tastenkombination,
- durch Verwenden der Methode DoCommand des Unterobjekts Commands einer Komponente.
Vordefinierte Befehle zur Symbolleiste hinzufügen
- Rufen Sie das Objekt Toolbar über die Eigenschaft Toolbar der Komponente ab.
- Fügen Sie den Befehl mit der Methode InsertAt des Objekts Toolbar an der gewünschten Position in die Symbolleiste ein, oder entfernen Sie ihn mit der Methode Delete oder DeleteAt.
Sie können die Schaltflächen auf der Symbolleiste mithilfe von Trennlinien gruppieren. Verwenden Sie dazu die Methode InsertAt des Objekts Toolbar mit der Konstante MI_Separator als Parameter.
C#-Code
C#-Code
- Rufen Sie das Objekt PopupMenu über die Eigenschaft PopupMenu der Komponente ab.
- Deaktivieren Sie bei Bedarf den gesamten Standardteil des Kontextmenüs mit der Eigenschaft StandardMenuEnabled des Objekts PopupMenu. Standardmäßig ist der Standardteil aktiviert.
- Aktivieren Sie den benutzerdefinierten Teil des Kontextmenüs mit der Eigenschaft CustomMenuEnabled des Objekts PopupMenu.
- Fügen Sie mit der Methode InsertAt des Objekts PopupMenu einen Befehl an der ausgewählten Position im benutzerdefinierten Teil des Kontextmenüs ein oder entfernen Sie ihn mit der Methode Delete oder DeleteAt.
Sie können die Elemente im benutzerdefinierten Teil des Kontextmenüs mithilfe von Trennlinien gruppieren. Verwenden Sie dazu die Methode InsertAt des Objekts PopupMenu mit der Konstante MI_Separator als Parameter.
C#-Code
C#-Code
Erstellen benutzerdefinierter Befehle
- Registrieren Sie den Befehl in der Komponente. Verwenden Sie dazu die Methode RegisterUserCommand des Unterobjekts Commands der Komponente und übergeben Sie eine der Konstanten MI_CustomCommand1, … MI_CustomCommand10 als Parameter. Außerdem sollten Sie in den Parametern dieser Methode den Pfad zum Symbol, den Text des Befehls und das Tastenkürzel angeben.
Ein Tastenkürzel besteht aus zwei Teilen: dem virtuellen Tastencode und den Tastenmodifikatoren (Ctrl, Alt, Shift). Wenn Sie ein Tastenkürzel an eine Methode von FineReader Engine übergeben, sollte es dasselbe Format wie der Rückgabewert (LRESULT) der Windows-Funktion SendMessage für die gesendete Nachricht HKM_GETHOTKEY haben. Um den Wert des Tastenkürzels in diesem Format zu erhalten, müssen Sie den virtuellen Tastencode des Tastenkürzels in das Low-Order-Byte des Werts und den Tastenmodifikator, der die Tasten der Tastenkombination festlegt, in das High-Order-Byte packen. Wenn Sie für den Befehl kein Tastenkürzel benötigen, übergeben Sie 0 als Parameter der Methode.
- Implementieren Sie das Ereignis OnCommand der Schnittstelle ICommandEvents, damit das Ereignis für den neuen Befehl verarbeitet wird. Siehe Arbeiten mit verknüpfbaren Objekten.
- Fügen Sie den Befehl der Symbolleiste oder dem benutzerdefinierten Teil des Kontextmenüs der Komponente hinzu. Das Vorgehen ist dasselbe wie bei vordefinierten Befehlen einer Symbolleiste oder eines Kontextmenüs.
C# code
C# code
- Entfernen Sie ihn aus der Symbolleiste oder aus dem benutzerdefinierten Teil des Kontextmenüs. Das Vorgehen ist dasselbe wie bei vordefinierten Befehlen einer Symbolleiste oder eines Kontextmenüs.
- Heben Sie die Registrierung des Befehls auf. Verwenden Sie dazu die Methode UnregisterUserCommand des Unterobjekts Commands der Komponente.
