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

Outils Discussion :

Problèmes Central widget Qt designer


Sujet :

Outils

  1. #1
    Candidat au Club
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    octobre 2018
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : Bénin

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : octobre 2018
    Messages : 3
    Points : 4
    Points
    4
    Par défaut Problèmes Central widget Qt designer
    Salut tout le monde..
    Je remercie au passage les différentes personnes qui travaillent sur ce site pour aider et faire avancer la connaissance.
    Je débute dans la programmation et je suis confronté à un problème..
    J'ai créé une classe d'interface graphique "FenPrincipale" dans Qt Designer de classe QMainWindow.
    J'ai créé un centralwidget avec trois bouttons( bttoncene, bttoncenep, quitter) dans le fichier fenprincipale.cpp.
    Quand je compile "La fenêtre s'affiche mais les boutons ne s'affichent pas."

    Voilà ma fenprincipale.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
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    #ifndef FENPRINCIPALE_H
    #define FENPRINCIPALE_H
     
    #include <QMainWindow>
    #include <QWidget>
    #include <QStackedWidget>
    #include <QPushButton>
    #include <QGridLayout>
    #include <QFont>
    #include "fencene.h"
    #include "fencenep.h"
     
     
    namespace Ui {
    class FenPrincipale;
    }
     
    class FenPrincipale : public QMainWindow
    {
        Q_OBJECT
     
    public:
        explicit FenPrincipale(QWidget *parent = 0);
        ~FenPrincipale();
     
    private:
        Ui::FenPrincipale *ui;
        QStackedWidget *centralfencen;
        QPushButton *bttoncene;
        QPushButton *bttoncenep;
        QPushButton *quitter;
        QGridLayout *fenprincipal;
     
    public slots:
        void Affichefencene();
        void Affichefencenep();
     
    };
     
    #endif // FENPRINCIPALE_H
    Voilà le code fenprincipale.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
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    #include "fenprincipale.h"
    #include "ui_fenprincipale.h"
    #include "fencene.h"
    #include "fencenep.h"
    #include <QStackedWidget>
    #include <QPushButton>
    #include <QGridLayout>
    #include <QFont>
     
    FenPrincipale::FenPrincipale(QWidget *parent) :
        QMainWindow(parent),
        ui(new Ui::FenPrincipale)
    {
        ui->setupUi(this);
     
        centralfencen = new QStackedWidget;
        centralfencen ->addWidget(new FenCene);
        centralfencen ->addWidget(new FenCenep);
        setCentralWidget(centralfencen);
     
        bttoncene = new QPushButton("Cahier Electronique de Note de L'Enseignant (CEN_E)"); //Finir le boulot
        bttoncene->setFont(QFont("Times New Roman", 20));
        bttoncene->setCursor(Qt::PointingHandCursor);
     
        bttoncenep = new QPushButton("Cahier Electronique de Note de L'Enseignant Principal (CEN_EP)");
        bttoncenep->setFont(QFont("Times New Roman", 20));
        bttoncenep->setCursor(Qt::PointingHandCursor);
     
        quitter = new QPushButton("Quitter");
        quitter->setFont(QFont("Times New Roman", 20));
        quitter->setCursor(Qt::PointingHandCursor);
     
        fenprincipal = new QGridLayout;
        fenprincipal->addWidget(bttoncene, 0, 0);
        fenprincipal->addWidget(bttoncenep, 0, 2);
        fenprincipal->addWidget(quitter, 1, 0, 1, 2);
     
        centralfencen->setLayout(fenprincipal);
     
     
        connect(bttoncene, &QPushButton::clicked, this, &FenPrincipale::Affichefencene);
        connect(bttoncenep,  &QPushButton::clicked, this, &FenPrincipale::Affichefencenep);
    }
     
    FenPrincipale::~FenPrincipale()
    {
        delete ui;
    }
     
    void FenPrincipale::Affichefencene()
    {
        centralfencen->setCurrentIndex(0);
    }
     
    void FenPrincipale::Affichefencenep()
    {
       centralfencen->setCurrentIndex(1);
    }
    Quel est le problème s'il vous plaît ?
    Je débute dans ce domaine, essayé d'être explicite avec moi..
    Merci d'avance

  2. #2
    Expert éminent
    Homme Profil pro
    Analyste/ Programmeur
    Inscrit en
    juillet 2013
    Messages
    3 841
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Analyste/ Programmeur

    Informations forums :
    Inscription : juillet 2013
    Messages : 3 841
    Points : 8 599
    Points
    8 599
    Par défaut
    Il y a deux choses qui sont bizarres (je ne suis pas expert)

    1) Ligne 38 centralfencen->setLayout(fenprincipal); Avec un QStackedWidget, on est sensé rajouter des widget (méthode addWidget) qui sont des pages. Et si je ne me trompe pas, Qt Designer rajoute des layouts.
    2) Avec un QStackedWidget seule 1 page est affichée à la fois. Il faut afficher la page qui contient ta grille de boutons (méthode setCurrentIndex avec l'index retourné par la méthode addWidget)

Discussions similaires

  1. problème positionement des div (design extensible)
    Par Er0r_Oo dans le forum Mise en page CSS
    Réponses: 4
    Dernier message: 09/05/2009, 10h36
  2. Problème Can't exit design mode
    Par Atomix51 dans le forum Visio
    Réponses: 8
    Dernier message: 05/09/2008, 09h29
  3. Réponses: 7
    Dernier message: 17/09/2007, 22h46
  4. Réponses: 2
    Dernier message: 28/08/2007, 17h12
  5. Problème cadrage widget
    Par jeanpir60 dans le forum Tkinter
    Réponses: 3
    Dernier message: 15/11/2006, 19h43

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