Main Content

Controladores de eventos COM

Descripción general del manejo de eventos

Para los controles, registre las funciones de controlador en el momento de crear una instancia del control (utilizando) o en cualquier momento posterior (utilizando).actxcontrolregisterevent

Para los servidores, utilice para registrar eventos.registerevent

Se usa para enumerar todos los eventos que reconoce un objeto COM.events

Argumentos pasados a controladores de eventos

Cuando se desencadena un evento registrado, pasa información del evento a su función de controlador, como se muestra en la tabla siguiente.MATLAB®

Argumentos pasados por funcionesMATLAB

Arg. No.ContenidoFormato

1

Nombre de objeto

ClaseMATLABCOM

2

ID de evento

double

3

Inicio de la lista de argumentos de evento

Como pasa el control

end-2

Lista de argumentos de fin de evento (argumento N)

Como pasa el control

end-1

Estructura de eventos

structure

end

Nombre del evento

char array

Al escribir una función de controlador de eventos, use el argumento de nombre de evento para identificar el origen del evento. Obtener los argumentos pasados por el control de la lista de argumentos de evento (arguments a través de).3end-2 Todos los controladores de eventos deben aceptar un número variable de argumentos:

function event (varargin) if (strcmp(varargin{end}, 'MouseDown'))  % Check the event name     x_pos = varargin{5};              % Read 5th Event Argument     y_pos = varargin{6};              % Read 6th Event Argument end

Nota

Los valores pasados varían en función del evento y control que se utilice.

Estructura de eventos

El argumento de estructura de eventos que se pasa contiene los campos que se muestran en la tabla siguiente.MATLAB

Campos de la estructura de eventos

Nombre de campoDescripciónFormato

Type

Nombre del evento

char array

Source

Nombre de control

ClaseMATLABCOM

EventID

Identificador de evento

double

Event Arg Name 1

Evento Arg valor 1

Como pasa el control

Event Arg Name 2

Evento Arg valor 2

Como pasa el control

Etc.

Event Arg N

Como pasa el control

Por ejemplo, cuando se desencadena el evento del control, pasa esta estructura de eventos al controlador de eventos registrado:MouseDownmwsamp2MATLAB

    Type: 'MouseDown'   Source: [1x1 COM.mwsamp.mwsampctrl.2]  EventID: -605   Button: 1    Shift: 0        x: 27        y: 24

Consulte también

| |

Ejemplos relacionados

Más acerca de