Se puede acceder a la mayor parte de la funcionalidad que ofrecen los Visual Components de ABBYY FineReader Engine mediante su menú contextual y su barra de herramientas (si existe). Los comandos disponibles en el menú contextual y en la barra de herramientas resultan útiles en la mayoría de los escenarios de uso habituales. Sin embargo, puede que necesite personalizar sus elementos para adaptarlos a su tarea. La barra de herramientas está disponible para Image Viewer, Text Editor, Document Viewer. Puede agregar nuevos botones a la barra de herramientas y quitar los innecesarios. Los botones pueden ser predefinidos o creados por usted.Documentation Index
Fetch the complete documentation index at: https://docs.abbyy.com/llms.txt
Use this file to discover all available pages before exploring further.

- La parte estándar del menú contextual es la que se muestra en el componente de forma predeterminada. Esta parte no puede modificarse. Solo puede mostrarse u ocultarse.
- La parte personalizada del menú contextual puede editarse. De forma predeterminada, está vacía. Puede agregar a esta parte del menú contextual cualquiera de los comandos estándar disponibles para el componente o cualquier comando definido por el usuario. La parte personalizada del menú contextual siempre se muestra después de la parte estándar. La parte personalizada del menú contextual también puede habilitarse o deshabilitarse.

Gestión de los comandos disponibles
- seleccionando un elemento de un menú contextual,
- haciendo clic en un botón de la barra de herramientas,
- presionando una tecla de acceso rápido,
- usando el método DoCommand del subobjeto Commands de un componente.
- Comandos de Image Viewer
- Comandos de Zoom Viewer
- Comandos de Document Viewer
- Comandos de Text Editor
Añadir comandos predefinidos a la barra de herramientas
- Obtenga el objeto Toolbar mediante la propiedad Toolbar del componente.
- Inserte el comando en la posición seleccionada de la barra de herramientas con el método InsertAt del objeto Toolbar, o elimínelo con el método Delete o DeleteAt.
Puede agrupar los botones de la barra de herramientas mediante separadores. Use el método InsertAt del objeto Toolbar con la constante MI_Separator como parámetro.
Código C#
Código C#
- Obtenga el objeto PopupMenu mediante la propiedad PopupMenu del componente.
- Deshabilite toda la parte estándar del menú contextual mediante la propiedad StandardMenuEnabled del objeto PopupMenu si no necesita usarla. De forma predeterminada, la parte estándar está habilitada.
- Habilite la parte personalizada del menú contextual mediante la propiedad CustomMenuEnabled del objeto PopupMenu.
- Inserte un comando en la posición seleccionada de la parte personalizada del menú contextual mediante el método InsertAt del objeto PopupMenu, o quítelo mediante el método Delete o DeleteAt.
Puede agrupar los elementos de la parte personalizada del menú contextual mediante separadores. Use el método InsertAt del objeto PopupMenu con la constante MI_Separator como parámetro.
Código C#
Código C#
Creación de comandos definidos por el usuario
- Registre el comando en el componente. Use el método RegisterUserCommand del subobjeto Commands del componente con cualquiera de las constantes MI_CustomCommand1, … MI_CustomCommand10 como parámetro. También debe especificar la ruta al icono, el texto del comando y la tecla de acceso rápido en los parámetros de este método.
La tecla de acceso rápido consta de dos partes: el código de tecla virtual y los modificadores de tecla (Ctrl, Alt, Shift). Cuando pasa una tecla de acceso rápido a un método de FineReader Engine, esta debe tener el mismo formato que el valor devuelto (LRESULT) por la función SendMessage de Windows para el mensaje HKM_GETHOTKEY enviado. Para obtener el valor de la tecla de acceso rápido con este formato, debe empaquetar el código de tecla virtual en el byte de orden bajo del valor y el modificador de tecla que especifica las teclas que definen una combinación de teclas de acceso rápido en el byte de orden alto. Si no necesita usar una tecla de acceso rápido para el comando, pase 0 como parámetro del método.
- Implemente el evento OnCommand de la interfaz ICommandEvents para que procese el evento del nuevo comando. Consulte Trabajar con objetos conectables.
- Agregue el comando a la barra de herramientas o a la parte personalizada del menú contextual del componente. El procedimiento es el mismo que para los comandos predefinidos de una barra de herramientas o de un menú contextual.
Código C#
Código C#
- Elimínelo de la barra de herramientas o de la parte personalizada del menú contextual. El procedimiento es el mismo que para los comandos predefinidos de una barra de herramientas o de un menú contextual.
- Anule el registro del comando. Use el método UnregisterUserCommand del subobjeto Commands del componente.
