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 :

Paramètres et sous-programmes communs

Mode arborescent

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Avril 2011
    Messages
    316
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2011
    Messages : 316
    Par défaut Paramètres et sous-programmes communs
    Bonsoir,

    voila, mon probleme est le suivant :

    j'ai 5 fenetres : ma fenetre principale, une fenetre modale, une fenetre modale cree avec QtDesigner, une fenetre non modale et une fenetre non modale cree avec QtDesigner.
    J'ai cree une classe qtMesParametres pour pouvoir enregistrer param1 a 4 depuis l'une des quatres fenetres.
    Dans chacune de ces fenetres, j'ai placer (entre autre) un lineEditParam1 a 4 pour inscrire le chiffre a sauvegarder et un QPushButton *param3Button a 4.

    Je voudrais afficher les 4 valeurs sauvegardees quand j'ouvre une des quatres fenetres, modifier ces valeurs et les enregistrer de nouveaux graces aux pushbutton.

    voila ce que j'ai fais (et je bloque)

    mon qtMesParametres.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
    #ifndef QTMESPARAMETRES_H
    #define QTMESPARAMETRES_H
    class QtMesParametres
    {
    public:
        QtMesParametres();
        void validParam1();
        void validParam2();
        void validParam3();
        void validParam4();
        int param1, param2, param3, param4;
    private :
    };
    #endif
    mon qtMesParametres.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 "qtMesParametres.h"
    QtMesParametres::QtMesParametres()
    {
    }
    void QtMesParametres::validParam1()
    {
    }
    void QtMesParametres::validParam2()
    {
    }
    void QtMesParametres::validParam3()
    {
    }
    void QtMesParametres::validParam4()
    {
    }
    mon qtParamModal.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
    #ifndef QTPARAMMODAL_H
    #define QTPARAMMODAL_H
     
    #include <QDialog>
     
    QT_BEGIN_NAMESPACE
    class QLineEdit;
    class QLabel;
    QT_END_NAMESPACE
     
    class QtParamModal : public QDialog
    {
        Q_OBJECT
     
    public:
        QtParamModal(QWidget *parent = 0);
     
    private slots:
     
     
    private:
        QLineEdit *lineEditParam1, *lineEditParam2, *lineEditParam3, *lineEditParam4;
        QLabel *textLabelParam1, *textLabelParam2, *textLabelParam3, *textLabelParam4;
        QPushButton *param1Button, *param2Button, *param3Button, *param4Button;
    };
     
    #endif // QTPARAMMODAL_H
    mon mon qtParamModal.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
    #include <QtGui>
     
    #include "qtParamModal.h"
    #include "qtMesParametres.h"
     
    QtParamModal::QtParamModal(QWidget *parent)
        : QDialog(parent)
    {
        setWindowTitle(tr("Fenêtre modale")); // met titre de la fenetre
        setWindowIcon(QIcon(":/Ressources/R2D2.ico")); // Icone de la fenetre declaré dans le fichier resource.
        QPushButton *param1Button = new QPushButton(tr("&Valider Param1"));
        connect(param1Button, SIGNAL(clicked()), this, SLOT(QtMesParametres::validParam1()));
        textLabelParam1 = new QLabel(tr("Param1 :"));
        lineEditParam1 = new QLineEdit();
        QPushButton *param2Button = new QPushButton(tr("&Valider Param2"));
        connect(param2Button, SIGNAL(clicked()), this, SLOT(QtMesParametres::validParam2()));
        textLabelParam2 = new QLabel(tr("Param2 :"));
        lineEditParam2 = new QLineEdit();
        QPushButton *param3Button = new QPushButton(tr("&Valider Param3"));
        connect(param3Button, SIGNAL(clicked()), this, SLOT(QtMesParametres::validParam3()));
        textLabelParam3 = new QLabel(tr("Param3 :"));
        lineEditParam3 = new QLineEdit();
        QPushButton *param4Button = new QPushButton(tr("&Valider Param4"));
        connect(param4Button, SIGNAL(clicked()), this, SLOT(QtMesParametres::validParam4()));
        textLabelParam4 = new QLabel(tr("Param4 :"));
        lineEditParam4 = new QLineEdit();
     
        QGridLayout *mainLayout = new QGridLayout;
        mainLayout->setSizeConstraint(QLayout::SetNoConstraint);
        mainLayout->addWidget(textLabelParam1, 0, 0);
        mainLayout->addWidget(lineEditParam1, 0, 1);
        mainLayout->addWidget(param1Button, 0, 2);
        mainLayout->addWidget(textLabelParam2, 1, 0);
        mainLayout->addWidget(lineEditParam2, 1, 1);
        mainLayout->addWidget(param2Button, 1, 2);
        mainLayout->addWidget(textLabelParam3, 2, 0);
        mainLayout->addWidget(lineEditParam3, 2, 1);
        mainLayout->addWidget(param3Button, 2, 2);
        mainLayout->addWidget(textLabelParam4, 3, 0);
        mainLayout->addWidget(lineEditParam4, 3, 1);
        mainLayout->addWidget(param4Button, 3, 2);
        setLayout(mainLayout);
    }
    et j'ai le(s) message(s) suivant :
    Object::connect: No such slot QtParamModal::QtMesParametres::validParam1() in qtParamModal.cpp:13
    1/ Est-ce que ma classe qtMesParametres est correcte.
    2/ que doisje modifier dans
    connect(param1Button, SIGNAL(clicked()), this, SLOT(QtMesParametres::validParam1()));
    pour que cela marche.
    3/ comment enregistrer param1 a 4 dans qtMesParametres et les afficher a l'ouverture de chaque fenetre.

    je joint le programme complet en piece jointe

    Cordialement
    Fichiers attachés Fichiers attachés

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Envoi d'informations dans un sous programme
    Par Tanguy Sarela dans le forum Linux
    Réponses: 3
    Dernier message: 22/12/2005, 16h57
  2. Réponses: 31
    Dernier message: 30/08/2005, 13h10
  3. Réponses: 2
    Dernier message: 04/06/2004, 10h36
  4. [langage] les sous programmes
    Par giverny dans le forum Langage
    Réponses: 6
    Dernier message: 21/07/2003, 19h24
  5. Réponses: 4
    Dernier message: 04/07/2003, 19h13

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