在Qt中创建类,其中QDialog内置特定对话框

create Class in Qt with QDialog inside for specific Dialogs

本文关键字:内置 QDialog 对话框 其中 Qt 创建      更新时间:2023-10-16

我只想制作一个自定义对话框,所以我想围绕标准QDialog创建一个类。目标是调用创建 Dialog 的构造函数,并且应该调用 show() 函数以使其显示。下一步是在我的 Widget(调用 Dialog 构造函数)按钮和 show() 函数之间建立连接。

我的标题如下所示:

#include <QDialog>
class Dialog_Setting : public QDialog
{
Q_OBJECT
public:
Dialog_Setting();
public slots:
void show(void);
private:
QDialog * dialog;
};

我.cpp:

#include "Dialog_Setting.h"
Dialog_Setting::Dialog_Setting()
{
dialog = new QDialog;
}
void Dialog_Setting::show()
{
dialog->show();
}

我已经取消了我的连接并收到一个新错误。 我的班级有什么问题?

对"vtable for Dialog_Setting"的未定义引用

谢谢你的帮助,我喜欢堆栈溢出

确保show()被实现为插槽,以便您可以向其connect()内容:

#include <QDialog>
class Dialog_Setting : public QDialog
{
Q_OBJECT
public:
Dialog_Setting();
public slots:
void show();
};

您还忘记从QObject或其他基于 QObject 的类(如QDialog)继承并声明宏Q_OBJECT。所有这些东西都是使您的自定义类通过connect()与其他类进行通信所必需的。