我只想制作一个自定义Dialog,所以我想围绕标准的QDialog创建一个类。目标是调用创建Dialog的构造函数,并调用show()函数使其显示。下一步是在我的Widget(调用Dialog构造函数)Pushbutton和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&#39;
感谢您的帮助,我喜欢StackOverflow
答案 0 :(得分:0)
确保将show()
作为广告位实施,以便connect()
填充它:
#include <QDialog>
class Dialog_Setting : public QDialog
{
Q_OBJECT
public:
Dialog_Setting();
public slots:
void show();
};
您也忘记继承QObject
或其他基于QObject的类QDialog
并声明宏Q_OBJECT。所有这些都是使您的自定义类通过connect()
与其他类进行通信所必需的。