IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Discussion :

Utilisation du widget QDialog

  1. #1
    Membre à l'essai
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2019
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Décembre 2019
    Messages : 31
    Points : 22
    Points
    22
    Par défaut Utilisation du widget QDialog
    Bonjour,

    Je débute en Qt et j'essaie de me familiariser avec certain widget notamment les boîtes de dialogue.
    J'essaie de créer une boite de dialogue simple non pré définie.

    1° Fichier Hider 'Qexemple.h

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    #ifndef QEXEMPLE_H
    #define QEXEMPLE_H
        #include <QApplication>
        #include <QWidget>
        #include <QDialog>
        #include <QPushButton>
     
        class FenDialog : public QDialog
        {
        Q_OBJECT
        public:
          FenDialog( QWidget *parent=0 );
     
        private:
          // les widgets
           QPushButton *BtnDialogue;
           //QDialog *QBienvenu;
     
          //signals:
     
        //public slots:
     
        };
    #endif // QEXEMPLE_H
    2° Fichier Constructeur 'Qexemple.cpp'
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    #include <Qexemple.h>
     
    FenDialog::FenDialog( QWidget *parent ) : QDialog( parent )
    {
        BtnDialogue = new QPushButton("Ouvrir la boîte de dialogue", this);
        BtnDialogue->setGeometry(150,100,150,30);
    }
    3° Fichier main 'Source.cpp'

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    #include "Qexemple.h"
    /*
        Source.cpp
        Exemple d'utilisation d'un Qdilog
    */
     
     
    int main(int argc, char *argv[])
    {
     QApplication app(argc, argv);
     
     FenDialog w;
     w.show();
     
     return app.exec();
    }
    Après compilation j'ai le message suivant:

    D:\.......\Source.cpp:12: erreur : unknown type name 'FenDialog'.
    Qu'est ce que j'ai loupé???

    Merci de votre aide.

    Alain

  2. #2
    Expert éminent
    Homme Profil pro
    Ingénieur développement matériel électronique
    Inscrit en
    Décembre 2015
    Messages
    1 565
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement matériel électronique
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Décembre 2015
    Messages : 1 565
    Points : 7 648
    Points
    7 648
    Par défaut
    Bonjour,

    Ça devrait marcher.
    - n'y a-t-il pas une autre erreur avant celle-ci?
    - autre possibilité, n'a tu pas deux fichiers "Qexemple.h" ou deux fichiers "Source.cpp"?

    Et attention au début de "Qexemple.cpp", il faut utiliser des guillemets et écrire . Mais ça n'est pas la cause de cette erreur.

  3. #3
    Membre à l'essai
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2019
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Décembre 2019
    Messages : 31
    Points : 22
    Points
    22
    Par défaut
    Bonsoir,

    Merci pour ta réponse .
    Citation Envoyé par dalfab Voir le message
    - n'y a-t-il pas une autre erreur avant celle-ci?
    - autre possibilité, n'a tu pas deux fichiers "Qexemple.h" ou deux fichiers "Source.cpp"?
    1° Oui il y a d'autres erreurs que je n'arrive pas à mettre en P.Jointe.

    -la 1° des erreurs(sur 1/14 et la suite jusqu’à 13/14 )

    C:\Qt\6.2.1\mingw81_64\include\QtWidgets\QPushButton:8: erreur : stray '#' in program
    In file included from debug\../../QControleDialog/Qexemple.h:6,
    from debug\moc_Qexemple.cpp:10:
    C:/Qt/6.2.1/mingw81_64/include/QtWidgets/QPushButton:8:3: error: stray '#' in program
    };#include "qpushbutton.h"
    ^
    C:\Qt\6.2.1\ming81_64\include\\QtWidgets\QPushButton
    Cependant avec un double clic, j'ai :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    class MyDialog : public QDialog
    {
     public:
     MyDialog() {
         QPushButton *modalButton1 = new QPushButton("Modale : QInputDialog");
     
     }
    };#include "qpushbutton.h"
    -la 14° des erreurs(14/4)

    D:\.......\Source.cpp:12: erreur : unknown type name 'FenDialog'.
    2° Il n'y a pas un doublon de fichier DANS CE PROJET. J'ai 3 projets dont le fichier Main c'est 'Source.h' mais chaque projet est dans un dossier a part.

    Merci pour votre aide Bonne fin de soirée.
    Alain

  4. #4
    Expert éminent
    Homme Profil pro
    Ingénieur développement matériel électronique
    Inscrit en
    Décembre 2015
    Messages
    1 565
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement matériel électronique
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Décembre 2015
    Messages : 1 565
    Points : 7 648
    Points
    7 648
    Par défaut
    Quand on doit corriger les erreurs, il faut commencer par la première. Si le compilateur comprend mal une ligne, il est paumé et tout ce qu'il écrit ensuite risque de n'avoir aucun sens. On est dans ce cas.

    La 1ére te dit qu'il a trouvé un # à un endroit inattendu, il s'attend à le trouver en début de ligne. Il semble que ton fichier système C:\Qt\6.2.1\mingw81_64\include\QtWidgets\QPushButton est incohérent, ça serait lui le coupable, un retour chariot aurait "disparu" juste avant le # de la 8ieme ligne.

Discussions similaires

  1. Pygtk: comment utiliser le widget Drawing Area
    Par leousch dans le forum GTK+ avec Python
    Réponses: 9
    Dernier message: 23/08/2009, 12h44
  2. [DeskI XiR2] Problème Utilisation BI Widgets
    Par myst3k dans le forum Débuter
    Réponses: 1
    Dernier message: 07/03/2009, 10h17
  3. Coment utiliser les widgets sous codeblock
    Par cobra85 dans le forum wxWidgets
    Réponses: 1
    Dernier message: 04/02/2008, 18h25
  4. Utilisation du widget Group
    Par *alexandre* dans le forum SWT/JFace
    Réponses: 2
    Dernier message: 20/12/2007, 10h05
  5. Utiliser le widget GtkImage...
    Par @drien dans le forum GTK+ avec C & C++
    Réponses: 5
    Dernier message: 18/11/2005, 07h52

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo