On User Command

When it is launched

The event occurs when calling a user command (provided that a corresponding item is added to the main menu or on the toolbar).

User command identifiers can be represented in the form of CI_UserCommand + <non-negative integer>.

Parameters

Name Type Access Description
CommandId TCommandID Read/write The identifier of the user command
Context IMainWindow Read/write The main window of the application

Note: To add a user command to the main menu or on the toolbar, you must use AppendItem / InsertItem and AppendButton /InsertButton methods of the IMenu interface and the IToolbar interface respectively. The command identifiers CI_UserCommand or CI_UserCommand + <non-negative integer> must be used.

The sample code below demonstrates how to add a menu item for a user command with a command identifier CI_UserCommand + 1.

ABBYY.FlexiCapture.ClientUI.TCommandID userCommand = ABBYY.FlexiCapture.ClientUI.TCommandID.CI_UserCommand;
ABBYY.FlexiCapture.ClientUI.TCommandID userCommand1 = (ABBYY.FlexiCapture.ClientUI.TCommandID) ((int)userCommand + 1);
IMenu menu = MainWindow.MainMenu[0].Submenu;
menu.AppendItem( userCommand1, "User command" );

A toolbar button or a menu item added for a user command will be disabled unless a handler of the On User Command event is added.

The sample code below demonstrates processing the On User Command event.

ABBYY.FlexiCapture.ClientUI.TCommandID commandID = ( ABBYY.FlexiCapture.ClientUI.TCommandID )( CommandId );
ABBYY.FlexiCapture.ClientUI.TCommandID userCommand = ABBYY.FlexiCapture.ClientUI.TCommandID.CI_UserCommand;
ABBYY.FlexiCapture.ClientUI.TCommandID userCommand1 = (ABBYY.FlexiCapture.ClientUI.TCommandID) ((int)userCommand + 1);
if( commandID == userCommand1 ) {
<... call necessary methods here ...>

12.04.2024 18:16:02

Please leave your feedback about this article

Usage of Cookies. In order to optimize the website functionality and improve your online experience ABBYY uses cookies. You agree to the usage of cookies when you continue using this site. Further details can be found in our Privacy Notice.