Récupérer la donnée d'un qline edit dans une autre page

oum87 Messages postés 21 Date d'inscription lundi 2 août 2010 Statut Membre Dernière intervention 23 janvier 2013 - 28 janv. 2012 à 23:38
 Utilisateur anonyme - 3 févr. 2012 à 22:15
Bonsoir tout le monde,

Je suis sur un projet QT et je bloque sur la récupération de données insérées dans une QLine edit au niveau d'une autre page :s:s
Si vous pouvez m'aidez svp :)
J'ai beau chercher mais en vain!!
le code est le suivant:
(La première fenétre win.h contient un qline edit que je souhaite récupérer au niveau d'une 2ème page win1.h)

****************************win.h****************************

#ifndef WIN_H
#define WIN_H

#include <QMainWindow>

namespace Ui {
class win;
}

class win : public QMainWindow
{
Q_OBJECT

public:
explicit win(QWidget *parent = 0);
~win();
QString gettext();

private:
Ui::win *ui;

private slots:
void on_pushButton_clicked();
};

#endif // WIN_H
**************************
J'ai définit un accesseur gettext() qui permet de récupérer la valeur du Qlineedit:

*****************WIN.CPP

#include "win.h"
#include "ui_win.h"
#include"win1.h"
#include"ui_win1.h"

win::win(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::win)
{
ui->setupUi(this);
}

win::~win()
{
delete ui;
}

QString win::gettext()
{
QString r= ui->line->text();
return r;

}

void win::on_pushButton_clicked()
{
win1 * fen=new win1();

setCentralWidget(fen);

}

************************Win1.h
#ifndef WIN1_H
#define WIN1_H

#include <QMainWindow>
#include"win.h"

namespace Ui {
class win1;
}

class win1 : public QMainWindow
{
Q_OBJECT

public:
explicit win1(QWidget *parent = 0);
~win1();
win *fen1;

private:
Ui::win1 *ui;


private slots:
void on_init_clicked();
//void on_pushButton_clicked();
};

#endif // WIN1_H

*****************Win1.cpp

#include "win1.h"
#include "ui_win1.h"
#include"win.h"
#include <QMainWindow>
#include"ui_win.h"

win1::win1(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::win1)
{

ui->setupUi(this);
}

win1::~win1()
{
delete ui;
}


void win1::on_init_clicked()
{
win *fen1=new win();

// ui->label->setText(fen->gettext());

ui->lineEdit->setText(fen1->gettext());
}


***********

Voici le code au complet :)
il n'ya pas de problème de compilation mais il ny'a pas de récupération de la première valeur du Qlineedit dans la 2ème page WIN1 :s:s

Merciiiii

1 réponse

Utilisateur anonyme
3 févr. 2012 à 22:15
je pense que vous devez définir votre fonction gettext comme un slot qui doit remplire un arrtibut r par exemple.
et connecter votre solt au signale valueChanged du LineEdit dans votre constructeur


cout<<"INTO THE WILD !!"<<endl;
0
Rejoignez-nous