Appel d'un dialogue dans une visualisation
Vous pouvez configurer l'entrée utilisateur pour une visualisation afin d'ouvrir une visualisation en tant que boîte de dialogue. Par exemple, un utilisateur clique sur un bouton qui ouvre une boîte de dialogue et demande la saisie de valeurs. Une boîte de dialogue est utilisée pour obtenir l'entrée de l'utilisateur et (si elle est modale), elle peut bloquer l'entrée en dehors de la boîte de dialogue.
Seules les visualisations de Dialogue type de visualisation peut être ouvert en tant que boîte de dialogue. Vous configurez le type de visualisation dans le Propriétés boîte de dialogue d'un objet de visualisation.
Condition : Une visualisation principale et une boîte de dialogue existent dans le projet.
Configurez une entrée utilisateur pour la visualisation principale avec OuvrirDialogue action pour la boîte de dialogue.
L'ouverture de la boîte de dialogue est configurée.
Configurez une entrée utilisateur pour un élément de la boîte de dialogue avec Fermer la boîte de dialogue action.
Conseil : pour les boîtes de dialogue non modales, vous pouvez également configurer l'entrée utilisateur pour la fermeture en dehors de la boîte de dialogue.
La fermeture du dialogue est configurée.
Astuce
Au lieu de créer vos propres boîtes de dialogue, vous pouvez utiliser les boîtes de dialogue des bibliothèques. Par exemple, lorsque le VisuDialogs
bibliothèque est intégrée au projet, vous pouvez utiliser les boîtes de dialogue incluses VisuDialogs.Login
ou VisuDialogs.FileOpenSave
.
Dans le Dispositifs vue, sélectionnez l'objet, ouvrez le menu contextuel et cliquez sur .
Clique le Visualisation languette.
Sélectionnez le Dialogue option et cliquez d'accord pour fermer la boîte de dialogue.
La visualisation a le Dialogue type de visualisation et peut être appelé comme tel.
Pour les appels de dialogue, un utilisateur clique généralement sur un bouton qui ouvre une boîte de dialogue et demande la saisie.
Dans l'exemple suivant, une boîte de dialogue s'affiche sous forme de calendrier et permet la saisie d'une date.
Exigence : Le projet comprend les visualisations visMain
et dlgCalender
.
Définissez le type de visualisation à partir de
dlgCalender
dialoguer.Faites glisser un rectangle vers la visualisation
visMain
.Configurez le
propriété avec le texteDue date: %t[yyyy-MM-dd]
.Configurez le
propriété avecPLC_PRG.dateDue
.Faites glisser un bouton vers la visualisation.
Configurez le
propriété avec le texteOpen dialog
.Configurez le Ouvrir la boîte de dialogue agir avec
propriété pour ledlgCalender
.L'entrée utilisateur pour l'ouverture de la boîte de dialogue est configurée.
Double-cliquez sur le
dlgCalender
dialogue.Faites glisser un Sélecteur de date élément à l'éditeur de visualisation.
Configurez le
propriété avecDue date: %t[yyyy-MM-dd]
.Configurez le
propriété avecPLC_PRG.dateCalender
.L'élément est configuré.
Faites glisser un bouton vers l'éditeur de visualisation.
Configurez le
propriété avecOK
.Configurez le Fermer la boîte de dialogue agir avec
propriété pour ledlgCalender, Result: OK
.Configurez un autre Exécuter le code ST agir avec
propriété pour lePLC_PRG.dateDue := PLC_PRG.dateCalendar;
.L'entrée utilisateur pour fermer la boîte de dialogue est configurée.
Faites glisser un autre bouton vers l'éditeur de visualisation.
Configurez le
propriété avecCancel
.Configurez le Fermer la boîte de dialogue agir avec
propriété pour ledlgCalender, Result: Cancel
.L'entrée utilisateur pour annuler la boîte de dialogue est configurée.
Compilez, téléchargez et démarrez l'application.
Déclaration des variables
PROGRAM PLC_PRG VAR dateDue : DATE := DATE#2000-01-01; dateCalendar : DATE; END_VAR
Vous pouvez ouvrir une boîte de dialogue au moyen du code de l'application ou depuis l'application. Pour un accès facile, utilisez l'interface du VisuUtils
bibliothèque. Lorsque vous ouvrez VisuUtils
dans le gestionnaire de bibliothèque, vous pouvez parcourir la bibliothèque par son contenu et accéder à la documentation de la bibliothèque.
Vous pouvez ouvrir et fermer des boîtes de dialogue à l'aide des blocs fonctionnels FbOpenDialog
, FbOpenDialogExtended
, et FbCloseDialog
de la bibliothèque VisuUtils
. Si une boîte de dialogue est ouverte ou fermée à l'échelle mondiale, alors le paramètre itfClientFilter := VU.Globals.AllClients
doit être défini lors de l'appel du bloc fonction. Ensuite, la boîte de dialogue apparaît ou disparaît simultanément sur toutes les variantes d'affichage configurées sous le gestionnaire de visualisation.
Astuce
Dans CODESYS V3.5 SP10 et versions antérieures, vous pouvez implémenter l'accès par programme aux boîtes de dialogue uniquement au moyen de la fonctionnalité du gestionnaire de boîtes de dialogue interne. Dans V3.5 SP11 et supérieur, vous avez le VisuUtils
bibliothèque.
Dans cet exemple de projet, les boîtes de dialogue sont accessibles par programmation via les interfaces du «Visu Utils
» bibliothèque. Vous pouvez y voir comment l'ouverture d'une boîte de dialogue ou la transmission de paramètres à une boîte de dialogue sont implémentées