Qt推广小部件问题

时间:2015-11-18 11:23:42

标签: c++ qt widget

我想推广两个小部件:QTextEditQTextBrowser在后​​台绘制一些内容。

我成功宣传了QTextEdit。但我无法完成QTextBrowser。我尝试将QTextBrowser推广到Display类。

这是代码:

class Display : public QTextBrowser
{
    Q_OBJECT
 public:
    Display(QWidget* parent = 0);
};


Display::Display(QWidget* parent):QTextBrowser(parent)
{
    qDebug() <<"Hello. I am Display";
}

在设计师中。它似乎得到了提升,但它没有做任何事情。

然后我换了一些东西进行测试。我使用标题QTextBrowserFoo提升为foo.h,这在我的项目中不存在。令人惊讶的是,它让我这样做。我重建项目并打开ui_mainwindow.h。我可以看到这些代码:

#include "foo.h"
................
foo *textBrowerOutput;
................

textBrowerOutput = new foo(centralWidget);
textBrowerOutput->setObjectName(QStringLiteral("textBrowerOutput"));
textBrowerOutput->setFont(font6);

尽管QTextBrowser默认运行,但我的程序运行完美。我不明白为什么我的促销不起作用。与此同时,我并不了解foo如何能够毫无错误地编译。

1 个答案:

答案 0 :(得分:0)

我终于创建了一个新项目。仅将.cpp,.h,主.pro文件和.ui文件复制到该新项目。它在重建后起作用。