首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >对QFileDialog进行子类化

对QFileDialog进行子类化
EN

Stack Overflow用户
提问于 2019-12-18 11:09:45
回答 1查看 111关注 0票数 0

我想对QFileDialog进行子类化,给它添加一些参数。基本上,我想添加几个小部件来指定文件的确切保存方式。我需要为此做些什么呢?

代码语言:javascript
复制
class ExportDialog : public QFileDialog
{
    Q_OBJECT

    public:
        ExportDialog( QWidget *parent ) : QFileDialog( parent )
        {
            setAcceptMode( QFileDialog::AcceptSave );
        }

        void AddParameterWidgets()
        {
            ...

我收到的错误如下:

代码语言:javascript
复制
menu_file.cpp:756: undefined reference to `vtable for ExportDialog'
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-12-19 00:30:21

undefined reference to 'vtable for ExportDialog'可能是由于缺少虚拟函数而导致的。

通常在Qt中,当你添加一个带有Q_OBJECT的新文件时就会发生这种情况。如果是这种情况,可以通过强制qmake重新运行来解决:“右键单击您的项目>运行qmake”或使用菜单“构建>运行qmake”。

根本原因是当您添加文件时,没有检测到Q_OBJECT宏,因此moc没有处理该文件。运行qmake将检测到Q_OBJECT宏。

如果这不能解决您的问题,请查看在类中声明但未在任何地方定义的函数的代码。

如果这仍然不起作用,你需要通过提供一个最小的可重现的例子来完成你的问题。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59384950

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档