Share via


Método InvisibleApp.OnComponentEnterState (Visio)

Informa a una instancia de Microsoft Visio de que el código de cliente está provocando que la instancia entre o salga de un estado determinado.

Sintaxis

expresión. OnComponentEnterState (uStateID, bEnter)

Expresión Variable que representa un objeto InvisibleApp .

Parameters

Nombre Obligatorio/opcional Tipo de datos Descripción
uStateID Obligatorio VisOnComponentEnterCodes Describe el estado en el que se entra o del que se sale junto con marcas que influyen en el comportamiento de la instancia mientras ésta se encuentra en el estado indicado.
bEnter Obligatorio Boolean True para indicar que se está entrando en un estado; False para indicar que se está saliendo de un estado.

Valor devuelto

Nothing

Observaciones

El _uStateID_argument indica el estado que se está escribiendo o saliendo. El código que llama a este método debería hacerlo tanto al entrar como al salir del estado.

Actualmente, el único cambio de estado admitido por el método OnComponentEnterState es visComponentStateModal, que indica que el cliente está realizando una acción que hace que Visio entre o salga de un estado modal.

La mayoría del código cliente no necesita llamar al método OnComponentEnterState al hacer que Visio entre o salga del estado modal, por ejemplo, al mostrar cuadros de diálogo modales. Normalmente, este método es utilizado por el código cliente que muestra cuadros de diálogo distintos de los formularios de Microsoft Visual Basic para Aplicaciones (VBA) y requiere un comportamiento diferente del predeterminado de Visio.

A continuación se incluyen las constantes y los valores para uStateID, que se declaran en la biblioteca de tipos de Visio en VisOnComponentEnterCodes. Cualquiera de las siguientes constantes con el prefijo visModal se puede combinar con visComponentStateModal para influir en el comportamiento de Visio al realizar la transición hacia o desde un estado modal.

Constante Valor Descripción
visComponentStateModal 1 El estado identificado como estado modal.
visModalDeferEvents &H10000 Hace que Visio intente diferir el desencadenamiento de eventos mientras se encuentra en estado modal. De forma predeterminada, Visio difiere el desencadenamiento de eventos al mostrar sus propios cuadros de diálogo, pero no difiere el desencadenamiento de eventos cuando el código del cliente ha provocado la aparición de un cuadro de diálogo.En el caso de varios ámbitos modales anidados, si hay algún ámbito que está aplazando los eventos, todos los ámbitos que estén dentro del ámbito más externo que está retrasando los eventos también los aplazarán.Esta marca solo surte efecto si Visio entra en un ámbito modal. Cuando sale de un ámbito modal, Visio se comporta de la misma manera que al entrar en el ámbito.
visModalNoBeforeAfter &H20000 Impide que Visio desencadene un evento BeforeModal al entrar en un ámbito modal o un evento AfterModal al abandonar un ámbito modal.De forma predeterminada, Visio desencadena estos eventos al mostrar sus propios cuadros de diálogo o los cuadros de diálogo implementados por VBA, pero no lo hace cuando el código cliente muestra un cuadro de diálogo.Una llamada al método OnComponentEnterState hará que se desencadenen estos eventos a menos que se especifique visModalNoBeforeAfter.
visModalDontBlockMessages &H40000 Impide que Visio rechace llamadas desde fuera de su subproceso principal mientras se encuentra en estado modal. De forma predeterminada, Visio rechaza las llamadas desde fuera de su subproceso mientras se encuentra en estado modal.En el caso de varios ámbitos modales anidados, si hay algún ámbito que está aplazando los eventos, todos los ámbitos que estén dentro del ámbito más externo que está retrasando los eventos también los aplazarán.Esta marca solo surte efecto si Visio entra en un ámbito modal. Cuando sale de un ámbito modal, Visio se comporta de la misma manera que al entrar en el ámbito.
visModalDisableVisiosFrame &H80000 Hace que Visio deshabilite su marco mientras se encuentra en estado modal. De forma predeterminada, Visio deshabilita su marco al mostrar sus propios cuadros de diálogo o los cuadros de diálogo implementados por VBA, pero no lo hace cuando el código del cliente de otro proceso muestra un cuadro de diálogo.Si el objetivo del código de otro proceso es mostrar un cuadro de diálogo y que la ventana de marco de Visio se comporte como si lo mostrara el proceso de Visio, el código puede establecer esta marca.Este indicador sólo tiene efecto cuando Visio entra en un ámbito modal. Cuando sale de un ámbito modal, Visio se comporta de la misma manera que al entrar en el ámbito.

Soporte técnico y comentarios

¿Tiene preguntas o comentarios sobre VBA para Office o esta documentación? Vea Soporte técnico y comentarios sobre VBA para Office para obtener ayuda sobre las formas en las que puede recibir soporte técnico y enviar comentarios.