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

Qt Discussion :

Problème de QLineEdit


Sujet :

Qt

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2007
    Messages
    634
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2007
    Messages : 634
    Par défaut Problème de QLineEdit
    Bonjour à tous,
    voilà mon problème je crée un tableau de QLineEdit de cette manière :
    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
    int x=10,y=10,i,j;
     
        for(i=1;i<=9;i++)
        {
            y=10;
            for(j=1;j<=9;j++)
                {
                cases[i][j] = new QLineEdit(this);
                cases[i][j]->setInputMask("D");
                cases[i][j]->setMaxLength(1);
                cases[i][j]->move(x,y);
                cases[i][j]->setAlignment(Qt::AlignCenter);
                cases[i][j]->setFixedSize(21,20);
                y+=30;
                }
            x+=30;
        }
    Jusque là aucun problème, l'affichage fonctionne correctement.
    Seulement je voudrais appeler une fonction lorsque l'utilisateur modifie la valeur d'un QlineEdit.
    Par exemple s'il modifie cases[1][1], on appelle une fonction avec comme paramètre (1,1). Seul problème l'auto-connect ne marche pas avec un tableau (on_case[1][1]_textChanged() => ne focntionne pas) et avec Qobject::connect() non plus, si vous avez une idée. Je suis preneur. J'espère avoir été clair.
    Merci d'avance

    Cordialement
    NeoKript

  2. #2
    yan
    yan est déconnecté
    Rédacteur
    Avatar de yan
    Homme Profil pro
    Ingénieur expert
    Inscrit en
    Mars 2004
    Messages
    10 035
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur expert
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2004
    Messages : 10 035
    Par défaut
    Salut et bien venu sur le forum
    Citation Envoyé par NeoKript Voir le message
    J'espère avoir été clair.
    oui et non...
    De ce que j'ai compris tu pourrais utiliser un qsignalmapper
    http://qt.developpez.com/doc/4.4/qsignalmapper/
    voir faire le tien pour emettre un signal correspondant ou utiliser la fonction
    sender dans ton slot pour savoir qui à emit un signal
    http://qt.developpez.com/doc/4.4/qobject/#sender

  3. #3
    yan
    yan est déconnecté
    Rédacteur
    Avatar de yan
    Homme Profil pro
    Ingénieur expert
    Inscrit en
    Mars 2004
    Messages
    10 035
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur expert
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2004
    Messages : 10 035
    Par défaut
    Comment as tu déclaré cases?

    je te conseil d'utiliser ube QList pour stocker tes widgets

  4. #4
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2007
    Messages
    634
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2007
    Messages : 634
    Par défaut
    Salut et merci pour ta rapidité.
    Voilà mes fichier pour que cela soit plus clair :

    fenetre.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
    #ifndef HEADER_FENETRE
    #define HEADER_FENETRE
     
    #include <QtGui>
    #include "ui_Fen.h"
     
    class Fen : public QWidget, private Ui::Fen
    {
        Q_OBJECT
     
        public:
            Fen(QWidget *parent = 0);
     
        public slots:
             void verif(int cases_i,int case_j);
     
     
        private:
            QLineEdit *cases[10][10];
     
        private slots:
            void on_Verifier_clicked();
            void on_Generer_clicked();
     
    };
    #endif
    fenetre.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
     
    #include "fenetre.h"
    #include <string>
    #include <time.h>
     
    Fen::Fen(QWidget *parent) : QWidget(parent)
    {
        setupUi(this);
     
        int x=10,y=10,i,j;
     
        for(i=1;i<=9;i++)
        {
            y=10;
            for(j=1;j<=9;j++)
                {
                cases[i][j] = new QLineEdit(this);
                cases[i][j]->setInputMask("D");
                cases[i][j]->setMaxLength(1);
                cases[i][j]->move(x,y);
                cases[i][j]->setAlignment(Qt::AlignCenter);
                cases[i][j]->setFixedSize(21,20);
                y+=30;
                }
            x+=30;
        }
    }
    et main.cpp
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    #include <QApplication>
    #include "fenetre.h"
     
     
    int main(int argc, char *argv[])
    {
        QApplication app(argc, argv);
     
        Fen Mafenetre;
        Mafenetre.show();
     
        return app.exec();
    }
    Voilà merci d'avance
    Je vais regarder les liens que tu m'a donné en espérant y comprendre quelque chose vu que je débute avec QT.

    Cordialement
    NeoKript

  5. #5
    yan
    yan est déconnecté
    Rédacteur
    Avatar de yan
    Homme Profil pro
    Ingénieur expert
    Inscrit en
    Mars 2004
    Messages
    10 035
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur expert
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2004
    Messages : 10 035
    Par défaut
    Citation Envoyé par NeoKript Voir le message
    Je vais regarder les liens que tu m'a donné en espérant y comprendre quelque chose vu que je débute avec QT.
    Fait une recherche sur le forum, y as déjà eu deux trois thread similaire

  6. #6
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2007
    Messages
    634
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2007
    Messages : 634
    Par défaut
    J'avais regardé et trouvé un topic parlant de mon problème (avec des QpushButton) qui donnait ce lien : http://qt-quarterly.developpez.com/qq-10/signalmapper/ parlant justement des signalmapper.

    Mais un peu d'aide sur l'utilisation dans mon cas serait la bienvenue.

    NeoKript

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

Discussions similaires

  1. QLineEdit : problème de sélection
    Par betsprite dans le forum Débuter
    Réponses: 2
    Dernier message: 27/02/2012, 17h00
  2. Problème avec la méthode Text() de la classe QLineEdit
    Par bilou_2007 dans le forum Débuter
    Réponses: 2
    Dernier message: 27/01/2011, 19h33
  3. [QtCore] Problème avec focusOutEvent sur QLineEdit
    Par tyrtamos dans le forum PyQt
    Réponses: 9
    Dernier message: 30/09/2010, 12h10
  4. Problème d'installation oracle 8.1.7 sous NT
    Par Anonymous dans le forum Installation
    Réponses: 7
    Dernier message: 02/08/2002, 14h18
  5. Problème avec la mémoire virtuelle
    Par Anonymous dans le forum CORBA
    Réponses: 13
    Dernier message: 16/04/2002, 16h10

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