温馨提示×

qt子窗口调用父窗口的方法是什么

qt
小亿
288
2024-05-15 19:21:20
栏目: 编程语言

在Qt中,子窗口可以通过使用父窗口的指针来调用父窗口的方法。首先,在子窗口的类定义中添加一个指向父窗口的指针变量,并在构造函数中将其初始化为父窗口的指针。然后就可以使用这个指针来调用父窗口的方法。

例如,假设有一个父窗口类MainWindow和一个子窗口类SubWindow,可以在SubWindow类中添加如下代码:

class SubWindow : public QDialog
{
    Q_OBJECT

public:
    SubWindow(MainWindow *parent) : m_parent(parent) {}

    void callParentMethod()
    {
        m_parent->parentMethod();
    }

private:
    MainWindow *m_parent;
};

然后在父窗口MainWindow类中实现parentMethod()方法:

class MainWindow : public QMainWindow
{
    Q_OBJECT

public:
    void parentMethod()
    {
        // 父窗口的方法实现
    }

private:
    SubWindow *m_subWindow;
};

在父窗口中创建子窗口的实例时,将父窗口的指针传递给子窗口:

m_subWindow = new SubWindow(this);

然后就可以在子窗口中调用父窗口的方法:

m_parent->parentMethod();

1