Bonjour à tous et toutes,
Je voulais savoir s'il y avait moyen de récupérer le 'parent' d'un objet?
J'ai en fait trois classes:
QMainWindow MainWindow
QGraphicsView Fenetre
QGraphicsScene Menu
Dans leur constructeur j'ai implémenté ceci :
Dans mon menu j'y ai ajouté un QPushButton permettant de quitter l'application grâce au couple signal/slot comme ceci:
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 MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow) { ui->setupUi(this); //... } Fenetre::Fenetre(QMainWindow *parent) : QGraphicsView(parent) { //... } Menu::Menu(QGraphicsView *parent) : QGraphicsScene(parent) { //... }
Ce qui fonctionne bien. Mais imaginons que je veille utiliser des attributs déclarés dans ma classe MainWindow depuis mon objet Menu. Comment dois-je m'y prendre?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 connect(bt_quitter,SIGNAL(clicked()),this->parent()->parent(),SLOT(close()));
Merci d'avance.
Je veux parler d'une sorte de transtypage :
QMainWindow mainw = QMainWindow( this->parent()->parent() );
Vu que je suis sûr de leur type, non?
Partager