Launch a QWidget from a QMain window

Posted by Opera on Stack Overflow See other posts from Stack Overflow or by Opera
Published on 2010-04-11T10:28:06Z Indexed on 2010/04/11 10:33 UTC
Read the original article Hit count: 277

Filed under:
|

Hello everyone !

I'm doing my first C++ - Qt4 application and I'm having some trouble "connecting" my different uis. I have a main window with several buttons and when I click on one, I want another window to open.

The MyMainWindowClass inherits from QMainWindow and the other from QWidget.

Here is the code I have written so far :


#include <iostream>
#include "MyWidgetClass.hpp"
#include "MyMainWindowClass.hpp"
#include "ui_MyMainWindowClassUi.h"

MyMainWindowClass::MyMainWindowClass(QWidget *parent) : QMainWindow(parent), m_ui(new Ui::MyMainWindowClassUi) { m_ui->setupUi(this); initConnect(); }

void MyMainWindowClass::initConnect() { QObject::connect(m_ui->SomeBtn, SIGNAL(clicked()), this, SLOT(SomeBtnClicked())); // Some other QObject::connect calls return; }

void MyMainWindowClass::SomeBtnClicked() { std::cout << "Some Btn has been clicked" << std::endl; this->setEnabled(false); MyWidgetClass mwc(this); mwc.show(); return; }

This calls the Ctor and the Dtor from MyWidgetClass, disables the MyMainWindowClassUi, but doesn't show my other GUI. What am I missing to have the window showed when I click on the button ?

© Stack Overflow or respective owner

Related posts about c++

Related posts about qt4