Dialog mit Schnittstelle aufrufen
Sie können für eine Visualisierung, die als Dialog aufgerufen wird, eine Schnittstelle definieren.
Gestalten Sie dafür eine Visualisierung mit Visualisierungstyp Dialog und deklarieren Sie für den Dialog eine Schnittstelle. Referenzieren Sie dann die Visualisierung in einer Hauptvisualisierung über eine Benutzereingabe und übergeben Sie der Schnittstelle Parameter.
Wenn Sie die Visualisierung als Integrierte Visualisierung aufrufen, müssen die Parameter, die übergeben werden, Variablen mit einem Basisdatentyp sein. Wenn die Visualisierung als CODESYS TargetVisuoder CODESYS WebVisu aufgerufen wird, können die Parameter auch benutzerdefinierten Datentypen haben.
Prinzipielle Vorgehensweise
Stellen Sie den Visualisierungstypen der Visualisierung auf Dialog.
Deklarieren Sie im Schnittstelleneditor des Dialogs Variablen.
Der Dialog hat eine Schnittstelle. Sie können beim Aufruf des Dialogs Parameter übergeben.
Konfigurieren Sie die Elemente des Dialogs und verwenden Sie dabei die Schnittstellenvariablen.
Selektieren Sie ein Element in einer anderen Visualisierung, üblicherweise der Hauptvisualisierung, um das Öffnen des Dialogs zu konfigurieren.
Klicken Sie in der Eigenschaft Konfigurieren.
auf dieDer Dialog Eingabekonfiguration erscheint.
Selektieren Sie Dialog öffnen in der Liste der ausgewählten Eingabeaktionen.
Wählen Sie in der Auswahlliste Dialog einen aus.
Wenn der ausgewählte Dialog eine Schnittstelle hat, erscheinen die Schnittstellenvariablen in der Liste darunter.
Weisen Sie den Schnittstellenvariablen unter der Spalte Wert einen Übergabeparameter zu.
Wählen Sie unter der Liste Aktualisiere
und
Parameter falls Ergebnis das Ergebnis aus, bei dem die Parameter aktualisiert werden.
Aktivieren Sie die Option Dialog modal öffnen. Beenden Sie den Dialog mit OK.
Das Öffnen des Dialogs ist konfiguriert.
Tipp
Wenn Sie einen Dialog gleichzeitig mehrmals ausführen wollen, werden mehrere Instanzen des Dialogs benötigt. Diese müssen schon beim Herunterladen der Applikation auf das Visualisierungsgerät geladen werden. Stellen Sie dafür im Visualisierungsmanager in der Registerkarte Visualisierungen die Anzahl der zu ladenden Instanzen ein.
visChangeUserLevel
:visMain
:
Typ | Name | Elementeigenschaften | Beschreibung |
---|---|---|---|
|
|
| Ausgabe mit Platzhalter |
| Zuweisung der Variablen | ||
|
|
| |
| Wenn ein Benutzer auf die Schaltfläche Tipp: Klicken Sie auf Konfigurieren , um im Dialog Eingabekonfiguration, EingabeaktionDialog öffnen die hinterlegte Konfiguration einzusehen. |
Parameter | Typ | Wert | Beschreibung |
---|---|---|---|
In dem Dialog Eingabekonfiguration, EingabeaktionDialog öffnen ist die Parameterliste hinterlegt. | |||
|
|
| Übergabe eines Strings für den Titel. |
|
|
| Übergabe eines Strings als Passwort für Level0. |
|
|
| Übergabe eines Strings als Passwort für Level1. |
|
|
| Übergabe eines Strings als Passwort für Level2. |
|
|
| Übergabe eines Strings als Passwort für Level3. |
|
|
| Übergabe eines Strings als Passwort für Level4. |
|
|
| Übergabe eines Strings als Passwort für Level5. |
|
|
| Übergabe eines Strings als Passwort für Level6. |
|
|
| Übergabe eines Strings als Passwort für Level7. |
|
|
| Übergabe einer Variablen für den vom Benutzer eingegebenen Level. |
|
|
| Übergabe einer Variablen für das vom Benutzer eingegebenen Passwort. |
Wert | Beschreibung |
---|---|
OK | aktiviert |
Dialog modal öffnen | Aktiviert. Eingaben außerhalb des Dialogs sind nicht möglich |
Die folgende Applikation ruft den Dialog Change User Level auf und fordert den Benutzer auf, einen Level auszuwählen und ein Passwort einzugeben. Wenn das Passwort stimmt, wird die Schaltfläche OK aktiviert. Dann kann der Benutzer den Dialog beenden. Dabei wird die Eingabe des Levels übernommen.

Deklaration der Schnittstelle von Dialog visChangeUserLevel
:
VAR_INPUT sTitle: 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
Typ | Name | Elementeigenschaften | Beschreibung |
---|---|---|---|
|
| Statische ID: | Die Eigenschaft weist dem Element das Bild eines leeren Dialogs mit grauem Hintergrund und einer leeren blauen Titelleiste zu. Das Bild ist in der Biblliothek VisuDialogs enthalten. |
|
|
| Ausgabe mit Platzhalter für Textvariable |
| Zuweisung der Schnittstellenvariablen | ||
|
| Variable: | Zuweisung der Schnittstellenvariablen |
Anzahl der Spalten: | |||
Anordnung der Radiobuttons: Von links nach rechts | Darstellung | ||
: [0] bis [7] : <n> | Beschriftung der 8 Radiobuttons mit Nummern von 0 bis 7 | ||
|
|
| Ausgabe mit Platzhalter für Textvariable |
| Zuweisung der Schnittstellenvariablen | ||
| In Dialog Eingabekonfiguration ist für die Auswahlliste Eingabetyp Texteingabe ausgewählt und die Option Textausgabevariable verwenden aktiviert. | ||
|
|
| Beschriftung |
|
|
| Beschriftung |
|
|
| Beschriftung |
| Konfiguration der Darstellung in zustandsabhängigen Farben. Zwischen den Farben wird umgeschaltet. | ||
| Wenn das Password und die Benutzereingabe nicht übereinstimmen, ist der Ausdruck | ||
| Wenn das Password und die Benutzereingabe nicht übereinstimmen, ist der Ausdruck Wenn das Passwort stimmt, wird die Schaltfläche verfügbar. | ||
| Wenn ein Benutzer auf die Schaltfläche OK drückt, wird der Dialog | ||
|
|
| Beschriftung |
| Darstellung | ||
| Wenn ein Benutzer auf die Schaltfläche Cancel drückt, wird der Dialog |
PLC_PRG
:PROGRAM PLC_PRG VAR iLevel: INT; sPwd : STRING; END_VAR

Nach Klick auf die Schaltfläche öffnet sich der Dialog und erlaubt Eingaben. Wenn der eingegebene Text dem hinterlegten entspricht, wird OK aktiviert:

Nach Klick auf OK wird die Auswahl übernommen.

Tipp
Das Beispiel verdeutlicht exemplarisch die Vorgehensweise bei mehreren Rückgabewerten. Allerdings kann die Rückgabe des Passworts einfacher mit einer lokalen Variable im Dialog realisiert werden.
Programmatisch auf Parameter zugreifen
Die in der Schnittstelle einer Visualisierung deklarierten Variablen stehen Ihnen automatisch als Strukturvariable zur Verfügung. Sie sind mit <Name der Visualisierung>_VISU_STRUCT
bezeichnet. Sie können damit auf die Schnittstellenvariablen von Visualisierungen, die als Dialog erscheinen, zugreifen. Üblicherweise verwenden Sie die Struktur im Applikationscode einer Funktion, die auf eine Benutzereingabe hin aufgerufen wird.
Pointer als Parameter übergeben
Wenn Sie eine komplexe Datenstruktur übergeben wollen, können Sie eine Schnittstellenvariable des Typs VAR_IN_OUT
mit dem Pragmaattribut VAR_IN_OUT_AS_POINTER
auszeichnen und ihr als Parameter einen Zeiger oder eine Referenz übergeben.
Deklarieren Sie das Benutzerdatenobjekt (
DUT
).Deklarieren Sie im Schnittstelleneditor eines Dialogs eine Schnittstellenvariable (
VAR_IN_OUT
) als eine Referenz auf das Datenobjekt, indem Sie der Variablen das Attribut'VAR_IN_OUT_AS_POINTER'
mitgeben.Programmieren Sie die Benutzerschnittstelle: Verwenden Sie den Dialog in einer Visualisierung oder weisen Sie den Dialog in der Eingabekonfiguration eines Visualisierungselements zu. Dann ist ein Zugriff auf die referenzierten Daten möglich.
FUNCTION_BLOCK ControlFB VAR_INPUT END_VAR VAR_OUTPUT END_VAR VAR bOk : BOOL := TRUE; nCounter : INT; nValue : INT; END_VAR nCounter := nCounter + 1;
Deklaration einer Schnittstellenvariabel mit VAR_IN_OUT_AS_POINTER

Benutzerschnittstelle: Dialog öffnet:
