Bonsoir,

Je suis débutant en Qt et j'ai un petit problème pour passer une variable de type QString déclarée dans une QDialog vers une QMainWindow.

maQDialog.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
#include "gestionpoi.h"
#include <QDialog>
 
namespace Ui {
class maQDialog;
}
 
class maQDialog: public QDialog
{
    Q_OBJECT
 
public:
    explicit maQDialog(QWidget *parent = 0);
    ~baseExistante();
    QString monQStringAPasser;
 
 
private:
    Ui::maQDialog*ui;
    maQMainWindow* fenetrePrincipale;
};
Dans une fonction de ma QDialog, je ferme celle-ci et ouvre ma QmainWindow (dans le .cpp) :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
this->close();
fenetrePrincipale= new maQMainWindow();
fenetrePrincipale->show();
Dans maQMainWindow.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
#include <QMainWindow>
 
namespace Ui {
class maQMainWindow;
}
 
class maQMainWindow: public QMainWindow
{
    Q_OBJECT
 
public:
    explicit maQMainWindow(QWidget *parent = 0);
    ~maQMainWindow();
 
private:
    Ui::maQMainWindow*ui;
};
Enfin, c'est dans maQMainWindow.cpp que j'aimerai récupérer la variable monQStringAPasser de type QString :

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
#include "maQMainWindow.h"
#include "ui_maQMainWindow.h"
 
maQMainWindow::maQMainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::maQMainWindow)
{
    ui->setupUi(this);
//Ici j'aimerai avoir accès à monQStringAPasser ...
}
 
gestionPoi::~gestionPoi()
{
    delete ui;
}
Voilà, j'ai préféré mettre l'intégralité du code pour mieux comprendre mon problème. Ici le code fonctionne, car je ne lui passe rien en paramètre (j'ai essayé plusieurs possiblités, mais je n'y parviens pas ).

Merci