Llamar a cuadros de diálogo con una interfaz
Puede definir una interfaz para una visualización que se llama como un cuadro de diálogo.
Cree una visualización para esto con el tipo de visualización Diálogo y declarar una interfaz para el diálogo. La referencia a la visualización en una visualización primaria por medio de una entrada de usuario y transfiere los parámetros a la interfaz.
Cuando llama a la visualización como visualización integrada, los parámetros que se transfieren deben ser variables de un tipo de datos básico. Si la visualización se llama como CODESYS TargetVisu o un CODESYS WebVisu, entonces los parámetros también pueden tener tipos de datos personalizados.
Procedimiento principal
Establezca los tipos de visualización de la visualización en diálogo.
Declare variables en el editor de interfaz del diálogo.
El diálogo tiene una interfaz. Puede transferir parámetros al llamar al cuadro de diálogo.
Configure los elementos del diálogo y use las variables de la interfaz.
Seleccione un elemento en otra visualización (generalmente la visualización principal) para configurar cómo se abre el cuadro de diálogo.
En el propiedad, haga clic Configurar.
los Configuración de entrada se abre el cuadro de diálogo.
Seleccione Abrir cuadro de diálogo en la lista de acciones de entrada seleccionadas.
Seleccione uno de los Diálogo cuadro de lista.
Si el cuadro de diálogo seleccionado tiene una interfaz, las variables de la interfaz se enumeran a continuación.
Asigne un parámetro de transferencia a las variables de interfaz en el Valor columna.
En el Actualizar
y
parámetro en caso de resultado lista, seleccione el resultado para el que se deben actualizar los parámetros.Activa la opción Abrir cuadro de diálogo modal. Hacer clic OK para salir del diálogo.
La apertura del cuadro de diálogo está configurada.
Sugerencia
Ejecutar un diálogo varias veces al mismo tiempo requiere múltiples instancias del diálogo. Estos ya deben haber sido descargados en el dispositivo de visualización al descargar la aplicación. Para ello, configure el número de instancias para descargar en el Administrador de visualización (visualizaciones pestaña).
Aviso
Ejemplo de proyecto: Cuadro de diálogo
Ejemplo
A continuación encontrará un ejemplo de la implementación del visMain visualización y el visChangeUserLevel cuadro de diálogo.
visMain
visMain visualizaciónEscribe | Nombre | Propiedades del elemento | Descripción |
|---|---|---|---|
| Nivel de usuario | : | Salida con marcador de posición |
: | Asignación de la | ||
|
| : | |
: | Cuando un usuario hace clic en Sugerencia: Haga clic Configurar para ver la configuración almacenada en Configuración de entrada cuadro de diálogo → Abrir cuadro de diálogo acción de entrada. |
El Abrir cuadro de diálogo la acción de entrada se implementa para el botón «Cambiar nivel de usuario». Como resultado, se abre un cuadro de diálogo (OnMouseClick).
Diálogo |
El cuadro de lista proporciona automáticamente todas las visualizaciones de todo el proyecto que se han configurado como cuadros de diálogo. |
|
|
| Transferencia de una cadena para el título. |
|
|
| Transferencia de una cadena como contraseña para Level0. |
|
|
| Transferencia de una cadena como contraseña para Level1. |
|
|
| Transferencia de una cadena como contraseña para Level2. |
|
|
| Transferencia de una cadena como contraseña para Level3. |
|
|
| Transferencia de una cadena como contraseña para Level4. |
|
|
| Transferencia de una cadena como contraseña para Level5. |
|
|
| Transferencia de una cadena como contraseña para Level6. |
|
|
| Transferencia de una cadena como contraseña para Level7. |
|
|
| Transferencia de una variable para el nivel especificado por el usuario. |
|
|
| Transferencia de una variable para la contraseña. |
y
parámetro en caso de resultado»Utilice | Valor | |
|---|---|---|
| OK | Cuando el usuario de visualización hace clic en el botón, se abre el cuadro de diálogo y se devuelve el resultado «OK». |
| Como resultado, si se habilita, no es posible introducir entradas fuera del cuadro de diálogo. |
visChangeUserLevelEl cuadro de diálogo proporciona elementos para seleccionar el nivel e introducir la contraseña.
Si la contraseña coincide, entonces el OK el botón está activado. A continuación, el usuario puede cerrar el cuadro de diálogo. También se aplica la entrada del nivel.

Declaración de la interfaz de diálogo. visChangeUserLevel:
VAR_INPUT
sItfTitle: STRING; // titel of the dialog box
sItfLevel0: STRING; //password level 0
sItfLevel1: STRING; //password level 1
sItfLevel2: STRING; //password level 2
sItfLevel3: STRING; //password level 3
sItfLevel4: STRING; //password level 4
sItfLevel5: STRING; //password level 5
sItfLevel6: STRING; //password level 6
sItfLevel7: STRING; //password level 7
END_VAR
VAR_IN_OUT
iItfLevel: INT; // user input: level
sItfPwd: STRING; //user input: password
END_VAR Escribe | Nombre | Propiedades del elemento | Descripción |
|---|---|---|---|
|
| identificación estática: | La propiedad asigna al elemento la imagen de un cuadro de diálogo en blanco con un fondo gris y una barra de título azul en blanco. La imagen se incluye en el VisuDialogs biblioteca. |
|
| : | Salida con marcador de posición para variable de texto |
: | Asignación de variable de interfaz | ||
|
| Variable: | Asignación de variable de interfaz |
Número de columnas: | |||
Orden de los botones de opción: De izquierda a derecha | Mostrar | ||
: [0] hasta [7] : <n> | Etiqueta de ocho botones de radio con números del 0 al 7 | ||
|
| : | Salida con marcador de posición para variable de texto |
: | Asignación de variable de interfaz | ||
: | En el Configuración de entrada diálogo, Entrada de texto se selecciona para el Tipo de entrada cuadro de lista y la opción Usar variable de salida de texto Está activado. | ||
|
| : | Etiqueta |
|
| : | Etiqueta |
|
| : | Etiqueta |
: : | Configuración de la pantalla en colores dependientes del estado. Puedes cambiar entre colores. | ||
: | Si la contraseña y la entrada del usuario no concuerdan, entonces la expresión es | ||
: | Si la contraseña y la entrada del usuario no concuerdan, entonces la expresión es Si la contraseña está de acuerdo, entonces el botón está habilitado. | ||
: | Si un usuario hace clic en el OK botón, luego el | ||
|
| : | Etiqueta |
: | Mostrar | ||
: | Si un usuario hace clic en el Cancelar botón, luego el |
y
parámetro en caso de resultado»
| OK | Cuando el usuario de visualización hace clic en el botón, se abre el cuadro de diálogo y se devuelve el resultado «OK». |
y
parámetro en caso de resultado»
| Cancelar | Cuando el usuario de visualización hace clic en el botón, se abre el cuadro de diálogo y se devuelve el resultado «Cancelar». |
PLC_PRG:PROGRAM PLC_PRG
VAR
iLevel: INT;
sPwd : STRING;
END_VAR 
Después de hacer clic en el botón, se abre el cuadro de diálogo y permite la entrada. Si el texto especificado concuerda con el texto almacenado, entonces OK está habilitado:

Después de hacer clic OK, se aplica la selección.

Sugerencia
El ejemplo muestra el procedimiento para múltiples valores devueltos. Sin embargo, la contraseña se puede devolver más fácilmente con una variable local en el cuadro de diálogo.
Acceder a los parámetros mediante programación
Las variables declaradas en la interfaz de una visualización están disponibles automáticamente como variables de estructura. Se identifican por <name of visualization>_VISU_STRUCT. Por lo tanto, puede acceder a las variables de interfaz de las visualizaciones que aparecen como un cuadro de diálogo. Normalmente se usa la estructura en el código de la aplicación de una función que es llamada por una entrada de usuario.
Pasar punteros como parámetros
Para pasar una estructura de datos compleja, puede marcar una variable de interfaz de tipo VAR_IN_OUT con el atributo pragma VAR_IN_OUT_AS_POINTER y pasar un puntero o referencia a él como un parámetro.
Declarar el objeto de datos de usuario (
DUT).En el editor de interfaz de un diálogo, declare una variable de interfaz (
VAR_IN_OUT) como una referencia al objeto de datos asignando el atributo'VAR_IN_OUT_AS_POINTER'a la variable.Programe la interfaz de usuario: use el diálogo en una visualización o asigne el diálogo en la configuración de entrada de un elemento de visualización. Entonces es posible el acceso a los datos referenciados.
FUNCTION_BLOCK ControlFB
VAR_INPUT
END_VAR
VAR_OUTPUT
END_VAR
VAR
bOk : BOOL := TRUE;
nCounter : INT;
nValue : INT;
END_VAR
nCounter := nCounter + 1;
Declaración de una variable de interfaz con VAR_IN_OUT_AS_POINTER

Interfaz de usuario: Se abre el cuadro de diálogo:

