Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/qt/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 为什么QtGUI在Qt5中不包含所有GUI元素_C++_Qt_Qt5 - Fatal编程技术网

C++ 为什么QtGUI在Qt5中不包含所有GUI元素

C++ 为什么QtGUI在Qt5中不包含所有GUI元素,c++,qt,qt5,C++,Qt,Qt5,我看了VoidRealm教程,他很容易地包括QtGui并开始使用它!但是我做同样的事情,它对我不起作用!例如,我的代码在包含QLabel之前不知道QWidget!或所有其他Gui元素 #include <QApplication> #include <QtGui> #include <QtCore> int main(int argc, char *argv[]) { QApplication a(argc, argv); QWidget

我看了VoidRealm教程,他很容易地包括QtGui并开始使用它!但是我做同样的事情,它对我不起作用!例如,我的代码在包含QLabel之前不知道QWidget!或所有其他Gui元素

#include <QApplication>
#include <QtGui>
#include <QtCore>

int main(int argc, char *argv[])
{

    QApplication a(argc, argv);
    QWidget *win = new QWidget;
    win->setWindowTitle("MBS");

    QGridLayout *gLay = new QGridLayout;

    QLabel *label1 = new QLabel("Name: ");

    win->show();

    return a.exec();
}
#包括
#包括
#包括
int main(int argc,char*argv[])
{
质量保证申请a(argc、argv);
QWidget*win=新的QWidget;
win->setWindowTitle(“MBS”);
QGridLayout*gLay=新的QGridLayout;
QLabel*label1=新的QLabel(“名称:”);
赢->秀();
返回a.exec();
}

Qt5
中,大多数以前称为
QtGui
的功能现在被称为
qtwidget


所以试着写
#include

在这种情况下,QLabel的Qt5也会从我这里得到错误,因为我没有将QLabel包含在它中,如果你想要一个好的理由,而不是像Predelnik给出的修复,我认为如果只包含实际使用的部分而不是整个工具包,编译时间会快得多。原因是QtGui现在是QtQuick2和QtWidgets的共同基础,它们不再相互依赖。因此QtGui不再包含任何与小部件相关的内容。