Chiamare le finestre di dialogo con un'interfaccia
È possibile definire un'interfaccia per una visualizzazione che viene chiamata come finestra di dialogo.
Crea una visualizzazione per questo con il tipo di visualizzazione Dialogo e dichiarare un'interfaccia per la finestra di dialogo. Il riferimento alla visualizzazione in una visualizzazione primaria per mezzo di un input dell'utente e trasferire i parametri all'interfaccia.
Quando si chiama la visualizzazione come visualizzazione integrata, i parametri che vengono passati devono essere variabili di un tipo di dati di base. Se la visualizzazione viene chiamata CODESYS TargetVisu o un CODESYS WebVisu, quindi i parametri possono avere anche tipi di dati personalizzati.
Procedura principale
Imposta i tipi di visualizzazione della visualizzazione su dialogo.
Dichiara le variabili nell'editor dell'interfaccia della finestra di dialogo.
La finestra di dialogo ha un'interfaccia. È possibile trasferire i parametri quando si richiama la finestra di dialogo.
Configurare gli elementi della finestra di dialogo e utilizzare le variabili dell'interfaccia.
Selezionare un elemento in un'altra visualizzazione (solitamente la visualizzazione principale) per configurare l'apertura della finestra di dialogo.
Nel proprietà, fare clic Configura.
Il Configurazione ingresso si apre la finestra di dialogo.
Selezionare Apri finestra di dialogo nell'elenco delle azioni di input selezionate.
Selezionane uno dal Dialogo casella di riepilogo.
Se la finestra di dialogo selezionata ha un'interfaccia, le variabili dell'interfaccia sono elencate di seguito.
Assegnare un parametro di trasferimento alle variabili di interfaccia in Valore colonna.
Nel Aggiornamento
e
parametro in caso di risultato elenco, seleziona il risultato per il quale i parametri devono essere aggiornati.Attiva l'opzione Apri finestra di dialogo modale. Clic ok per uscire dalla finestra di dialogo.
L'apertura della finestra di dialogo è configurata.
Suggerimento
L'esecuzione di una finestra di dialogo più volte contemporaneamente richiede più istanze della finestra di dialogo. Questi devono essere già stati scaricati nel dispositivo di visualizzazione durante il download dell'applicazione. A tale scopo, impostare il numero di istanze da scaricare in Visualization Manager (Visualizzazioni scheda).
Avviso
Progetto di esempio: Finestra di dialogo
Esempio
Di seguito troverai un esempio dell'implementazione del visMain visualizzazione e visChangeUserLevel finestra di dialogo.
visMain
visMain visualizzazioneTipo | Nome | Proprietà dell'elemento | Descrizione |
|---|---|---|---|
| Livello utente | : | Output con segnaposto |
: | Assegnazione del | ||
|
| : | |
: | Quando un utente fa clic su Suggerimento: fare clic Configura per visualizzare la configurazione memorizzata nel Configurazione di input finestra di dialogo → Apri finestra di dialogo azione di input. |
Le Apri finestra di dialogo l'azione di input è implementata per il pulsante «Cambia livello utente». Di conseguenza, si apre una finestra di dialogo (OnMouseClick)).
Dialogo |
La casella di riepilogo fornisce automaticamente tutte le visualizzazioni a livello di progetto che sono state configurate come finestre di dialogo. |
|
|
| Trasferimento di una stringa per il titolo. |
|
|
| Trasferimento di una stringa come password per Level0. |
|
|
| Trasferimento di una stringa come password per Level1. |
|
|
| Trasferimento di una stringa come password per Level2. |
|
|
| Trasferimento di una stringa come password per Level3. |
|
|
| Trasferimento di una stringa come password per Level4. |
|
|
| Trasferimento di una stringa come password per Level5. |
|
|
| Trasferimento di una stringa come password per Level6. |
|
|
| Trasferimento di una stringa come password per Level7. |
|
|
| Trasferimento di una variabile per il livello specificato dall'utente. |
|
|
| Passaggio di una variabile per la password. |
e
parametro in caso di risultato»Usare | Valore | |
|---|---|---|
| ok | Quando l'utente della visualizzazione fa clic sul pulsante, si apre la finestra di dialogo e viene restituito il risultato «OK». |
| Abilitato di conseguenza, gli input al di fuori della finestra di dialogo non sono possibili. |
visChangeUserLevelLa finestra di dialogo fornisce elementi per selezionare il livello e inserire la password.
Se la password corrisponde, OK il pulsante è abilitato. Quindi l'utente può chiudere la finestra di dialogo. Viene applicato anche l'input del livello.

Dichiarazione dell'interfaccia di dialogo 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 Tipo | Nome | Proprietà dell'elemento | Descrizione |
|---|---|---|---|
|
| ID statico: | La proprietà assegna all'elemento l'immagine di una finestra di dialogo vuota con uno sfondo grigio e una barra del titolo blu vuota. L'immagine è inclusa nel VisuDialogs libreria. |
|
| : | Output con segnaposto per variabile di testo |
: | Assegnazione della variabile di interfaccia | ||
|
| Variabile: | Assegnazione della variabile di interfaccia |
Numero di colonne: | |||
Ordine dei pulsanti di opzione: Da sinistra a destra | Schermo | ||
: [0] bis [7] : <n> | Etichetta di otto pulsanti di opzione con numeri da 0 a 7 | ||
|
| : | Output con segnaposto per variabile di testo |
: | Assegnazione della variabile di interfaccia | ||
: | Nel Configurazione ingresso dialogo, L'immissione di testo è selezionato per il Tipo di ingresso casella di riepilogo e l'opzione Usa la variabile di output del testo è attivato. | ||
|
| : | Etichetta |
|
| : | Etichetta |
|
| : | Etichetta |
: : | Configurazione del display in colori dipendenti dallo stato. È possibile passare da un colore all'altro. | ||
: | Se la password e l'immissione dell'utente non sono d'accordo, l'espressione è | ||
: | Se la password e l'immissione dell'utente non sono d'accordo, l'espressione è Se la password è d'accordo, il pulsante è abilitato. | ||
: | Se un utente fa clic su ok pulsante, quindi il | ||
|
| : | Etichetta |
: | Schermo | ||
: | Se un utente fa clic su Annulla pulsante, quindi il |
e
parametro in caso di risultato»
| OK | Quando l'utente della visualizzazione fa clic sul pulsante, si apre la finestra di dialogo e viene restituito il risultato «OK». |
e
parametro in caso di risultato»
| Annulla | Quando l'utente della visualizzazione fa clic sul pulsante, si apre la finestra di dialogo e viene restituito il risultato «Annulla». |
PLC_PRG:PROGRAM PLC_PRG
VAR
iLevel: INT;
sPwd : STRING;
END_VAR 
Dopo aver fatto clic sul pulsante, la finestra di dialogo si apre e consente l'immissione. Se il testo specificato è d'accordo con il testo memorizzato, allora ok è abilitato:

Dopo aver cliccato ok, la selezione viene applicata.

Suggerimento
L'esempio mostra la procedura per più valori restituiti. Tuttavia, la password può essere restituita più facilmente con una variabile locale nella finestra di dialogo.
Accesso ai parametri a livello di codice
Le variabili dichiarate nell'interfaccia di una visualizzazione sono disponibili automaticamente come variabili di struttura. Sono identificati da <name of visualization>_VISU_STRUCT. Pertanto, è possibile accedere alle variabili di interfaccia delle visualizzazioni che appaiono come una finestra di dialogo. Normalmente si usa la struttura nel codice dell'applicazione di una funzione che viene chiamata da un input dell'utente.
Passaggio di puntatori come parametri
Per passare una struttura dati complessa, puoi contrassegnare una variabile di interfaccia di tipo VAR_IN_OUT con l'attributo pragma VAR_IN_OUT_AS_POINTER e passare un puntatore o un riferimento ad esso come parametro.
Dichiara l'oggetto dati utente (
DUT).Nell'editor di interfaccia di una finestra di dialogo, dichiarare una variabile di interfaccia (
VAR_IN_OUT) come riferimento all'oggetto dati assegnando l'attributo'VAR_IN_OUT_AS_POINTER'alla variabile.Programmare l'interfaccia utente: utilizzare la finestra di dialogo in una visualizzazione o assegnare la finestra di dialogo nella configurazione di input di un elemento di visualizzazione. Quindi è possibile accedere ai dati di riferimento.
FUNCTION_BLOCK ControlFB
VAR_INPUT
END_VAR
VAR_OUTPUT
END_VAR
VAR
bOk : BOOL := TRUE;
nCounter : INT;
nValue : INT;
END_VAR
nCounter := nCounter + 1;
Dichiarazione di una variabile di interfaccia con VAR_IN_OUT_AS_POINTER

Interfaccia utente: si apre la finestra di dialogo:

