Qt create和QLabel,为什么会有错误?

时间:2011-04-01 09:06:31

标签: c++ qt qlabel

我正在使用Qt creator 2.0.1,并且在输入此行时:

#include <QLabel>

我收到以下错误:

QLabel: No such file or directory

为什么?而且,在这种情况下如何包含标签?

更新

@maverik向我展示了如何解决QLabel错误,但我现在收到此错误:

enter image description here

我正在尝试运行的程序是:

#include <QtCore/QCoreApplication>
#include <QtGui/QLabel>

int main(int argc, char *argv[]) {
QCoreApplication myapp(argc, argv);
QLabel *label = new QLabel("Hello");
label->show();
return myapp.exec(); 
}

有什么想法吗?

感谢。

5 个答案:

答案 0 :(得分:5)

使用

  

的QApplication

而不是

  

QCoreApplication

来自QCoreApplication docs:

  

QCoreApplication类提供了一个   控制台Qt的事件循环   应用。这个类用于   非GUI应用程序提供他们的   事件循环。对于非GUI应用程序   使用Qt,应该是准确的   一个QCoreApplication对象。对于GUI   应用程序,请参阅QApplication。

然后包含相关的标题,它将编译得很好。 QCoreApplication适用于非Gui应用程序(控制台)。

答案 1 :(得分:3)

检查您的Qt项目文件是否包含

QT += gui
CONFIG += qt

且不包含

QT -= gui

我认为这会导致链接问题。我想也是

#include <QLabel>
如果项目文件正确,

......应该足够了。

答案 2 :(得分:1)

试试这个:

#include <QtGui/QLabel>

答案 3 :(得分:0)

我想我找到了问题所在。

由于我正在使用Qt Creator,因此在创建新项目时,我选择了Qt Console Application而不是Qt Gui Application

答案 4 :(得分:0)

QLabel类别 QLabel小部件提供文本或图像显示。更多...

标题:#include qmake:QT + =小部件 继承:QFrame 所有成员的列表,包括继承的成员 过时的成员

***只需添加 QT + =小部件 到.pro