Rubrique :Runtime
Comment peut-on retourner, de la vue appelée, dans la vue dans laquelle il y a eu appel ?

Date: 03.06.1997

L'auteur, ainsi que les membres du Club des Utilisateurs de WinCC® déclinent toute responsabilité sur les scripts, leurs contenus; et plus généralement sur les informations diffusés dans la totalité des pages du site.

La vue principale "RepèreNomVue.PDL" cache à l'aide d'un bouton plusieurs vues partielles dans la vue "FenêtreVue1".
Nom des vues : "FenêtreVue1.PDL", "FenêtreVue2.PDL"
On commute de ces vues vers une autre vue. De cette autre vue on veut retourner, à l'aide d'un bouton, dans la vue principale "RepèreNomVue.PDL" La vue correspondante doit y être affichée.

Solution :

  1. Créer les variables internes dans le Control Center :
    "NomVuePrincipale", variable texte 8 bits alphanumérique, longueur 255
    "NomVueFenêtre", variable texte 8 bits alphanumérique, longueur 255
  2. Créer la vue principale "RepèreNomVue.PDL" :
    Action pour les événements "SélectionVue" :
    #include "apdefap.h"
    void OnOpenPicture(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName)
    {
    SetPictureName("RepèreNomVue ","FenêtreVue1",GetTagChar("NomVueFenêtre"));
    //Type de retour :char*
    SetTagChar("NomVuePrincipale"," RepèreNomVue.PDL");
    //Type de retour :BOOL
    }
  3. Créer une fenêtre de vue "FenêtreVue1"
    Créer un bouton "Bouton1" pour insérer la première vue dans la fenêtre de vue par les événements "Souris" :
    #include "apdefap.h"
    void OnClick(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName)
    {
    SetPictureName("RepèreNomVue ","FenêtreVue1","FenêtreVue1".PDL");
    //Type de retour :BOOL
    }
  4. Créer un bouton "Bouton2" pour insérer la deuxième vue dans la fenêtre de vue par les propriétés du "clic de la souris" :
    #include "apdefap.h"
    void OnClick(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName)
    {
    SetPictureName("RepèreNomVue ","FenêtreVue1","FenêtreVue2.PDL");
    //Type de retour :BOOL
    }
  5. Créer la vue "FenêtreVue1.PDL" qui doit être insérée comme fenêtre de vue :
    Cette vue doit comporter un bouton "Bouton1", qui déclenchera le basculement dans la vue "VueMessage.PDL".
    Action pour les événements "SélectionVue" :
    #include "apdefap.h"
    void OnOpenPicture(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName)
    {
    SetTagChar("NomVueFenêtre","FenêtreVue1.pdl");
    //Type de retour : BOOL
    }

    Action pour "Bouton1" pour les événements "Souris" :
    #include "apdefap.h"
    void OnClick(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName)
    {
    OpenPicture("VueMessage.PDL");
    //Type de retour : void
    }
  6. Créer la vue " FenêtreVue2.PDL" qui doit être insérée comme fenêtre de vue :
    Cette vue doit comporter un bouton "Bouton2", qui déclenchera le basculement dans la vue "VueMessage.PDL".

    Action pour les événements "SélectionVue" :
    #include "apdefap.h"
    void OnOpenPicture(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName)
    {
    SetTagChar("NomVueFenêtre","FenêtreVue2.pdl");
    //Type de retour : BOOL
    }

    Action pour "Bouton1" pour les événements "Souris" :
    #include "apdefap.h"
    void OnClick(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName)
    {
    OpenPicture("VueMessage.PDL");
    //Type de retour : void
    }
  7. Créer un bouton dans la vue "VueMessage.PDL", avec lequel le retour vers la vue de sortie sera effectué. L'action suivante est à créer pour ce bouton dans les événements pour la "Souris" :
    #include "apdefap.h"
    void OnClick(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName)
    {
    OpenPicture(GetTagChar("NomVuePrincipale"));
    //Type de retour : void
    }


Automatismes et Systèmes Industriels

Les membres du Club WinCC sur le Ouebe
José Ros - Edito & Tips - jose.ros@asi-system.com
Benjamin Barletta - Web Designer - benjamin.barletta@asi-system.com
Jean-Louis Marin - Contacts - jean-louis.marin@asi-system.com