#include #include class TestWidget : public QWidget { Q_OBJECT public: TestWidget(QWidget *parent = nullptr) : QWidget(parent) { } ~TestWidget() { cancelLoad(); } signals: void updated() const; private: void cancelLoad() { emit updated(); } }; class MainWindow : public QMainWindow { Q_OBJECT public: MainWindow(QWidget *parent = nullptr) : QMainWindow(parent) { m_test = new TestWidget(this); connect(m_test, &TestWidget::updated, this, &MainWindow::updateContent); } private: void updateContent() { } TestWidget *m_test = nullptr; }; int main(int argc, char *argv[]) { QApplication a(argc, argv); MainWindow w; w.show(); return a.exec(); } #include "main.moc"