Examen de propiedades de elementos de menú

AutoCAD ActiveX

 
Examen de propiedades de elementos de menú
 
 
 

Las siguientes propiedades están presentes en todas las opciones de menús:

TagString

El identificador, o identificador de nombre, es una cadena compuesta por caracteres alfanuméricos y de subrayado (_). Esta cadena identifica de forma única un elemento dentro de un determinado menú. Los identificadores denotan las teclas rápidas (secuencias de pulsación de teclas) correspondientes a cada opción de menú.

Utilice la propiedad TagString para leer o escribir el valor de los identificadores.

Label

Una etiqueta (Label) es una cadena que define el contenido y el formato de las opciones de menú.

Las etiquetas de elementos de menú pueden contener expresiones de cadena DIESEL condicionales que las alteren cada vez que se visualicen.

Utilice la propiedad Label para leer o escribir el valor de las etiquetas.

Caption

Una leyenda es el texto que el usuario ve como nombre del menú. Es una propiedad de sólo lectura que procede de la propiedad Label una vez que se eliminan las expresiones de cadena DIESEL.

Utilice la propiedad Caption para leer o escribir el valor de las leyendas.

Macro

Una macro es una serie de comandos que ejecutan acciones específicas cuando se selecciona un menú. Las macros de menús pueden ser simples registros de pulsaciones de teclas que efectúen una tarea o una combinación compleja de comandos, AutoLISP, DIESEL, o código de programación de ActiveX.

Utilice la propiedad Macro para leer o escribir el valor de las macros de menú.

HelpString

La cadena de ayuda (HelpString) es la secuencia de texto que aparece en la línea de estado de AutoCAD cuando un usuario resalta una opción para seleccionarla.

Utilice la propiedad HelpString para escribir o leer el valor de una cadena de ayuda.

Enable

Utilice la propiedad Enable para activar o desactivar una opción de menú. También puede leer la propiedad Enable para determinar si un elemento de menú está seleccionado o no. Cuando se utiliza esta propiedad para activar o desactivar una opción de menú, quedan sustituidos los parámetros de activación que tenga la expresión DIESEL de la opción.

Para obtener un ejemplo de desactivación de elementos de menú, véase Examen de propiedades de elementos de menú.

Check

Utilice la propiedad Check para seleccionar o retirar la selección de una opción de menú. También puede leer la propiedad Check para determinar si un elemento de menú está seleccionado o no. Cuando se utiliza esta propiedad para seleccionar o retirar la selección de una opción de menú, quedan sustituidos los parámetros de selección que tenga la expresión DIESEL de la opción.

Index

El índice de una opción de menú determina su posición dentro del menú al que pertenece. La posición del índice de un menú siempre es la 0. Por ejemplo, si un elemento es el primero de un menú, devuelve una posición de índice 0. Si es el segundo elemento, devuelve la posición de índice 1 y así sucesivamente.

Type

Utilice la propiedad Type para determinar el tipo de opción de menú. Una opción de menú puede pertenecer a las siguientes tipologías: menú normal, separador o encabezamiento de un submenú. Si es un elemento de menú normal, esta propiedad devuelve acMenuItem. Si el elemento es un separador, esta propiedad devuelve acMenuSeparator. Si el elemento es el encabezamiento de un submenú, esta propiedad devuelve acSubMenu.

SubMenu

Utilice la propiedad SubMenu para localizar el submenú. Si el elemento de menú es del tipo acSubMenu, esta propiedad devuelve el menú que está asociado como submenú, o menú incrustado. El menú incrustado se devuelve como un objeto PopupMenu.

Si el elemento de menú no es del tipo acSubMenu, esta propiedad devuelve un error.

Parent

Utilice la propiedad Parent para localizar el menú al que pertenece una opción de menú. Esta propiedad devuelve el menú donde reside la opción. El menú superior se devuelve como objeto PopupMenu.

Activación y desactivación de opciones de menú

En este ejemplo se crea un menú nuevo denominado “TestMenu” y se insertan dos opciones de menú. Se desactiva el segundo elemento mediante la propiedad Enable y se muestra el menú en la barra de menús.

Sub Ch6_DisableMenuItem()
    Dim currMenuGroup As AcadMenuGroup
    Set currMenuGroup = ThisDrawing.Application.MenuGroups.Item(0)
      
    ' Create the new menu
    Dim newMenu As AcadPopupMenu
    Set newMenu = currMenuGroup.Menus.Add("TestMenu")
      
    ' Add two menu items and a menu separator to the new menu
    Dim MenuEnable As AcadPopupMenuItem
    Dim MenuDisable As AcadPopupMenuItem
    Dim MenuSeparator As AcadPopupMenuItem
    Dim openMacro As String
      
    ' Assign the macro the VB equivalent of "ESC ESC _open "
    openMacro = Chr(3) + Chr(3) + "_open "
      
    Set MenuEnable = newMenu.AddMenuItem _
                (newMenu.count + 1, "OpenEnabled", openMacro)
    Set MenuSeparator = newMenu.AddSeparator("")
    Set MenuDisable = newMenu.AddMenuItem _
                (newMenu.count + 1, "OpenDisabled", openMacro)
      
    ' Disable the second menu item
    MenuDisable.Enable = False
      
    ' Display the menu on the menu bar
    newMenu.InsertInMenuBar _
                (ThisDrawing.Application.menuBar.count + 1)
End Sub