租用问题

质量为本、客户为根、勇于拼搏、务实创新

< 返回租用问题列表

qt子窗口调用父窗口的有哪些方法,qt在父窗口中打开新窗口

发布时间:2024-05-15 19:21:20

qt子窗口调用父窗口的有哪些方法

在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();