• 8978阅读
  • 3回复

错在哪里? [复制链接]

上一主题 下一主题
离线mylovetus
 
只看楼主 倒序阅读 楼主  发表于: 2006-03-28
------------------------------------------main.cpp---------------------
#include <qapplication.h>
#include <qlabel.h>

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

  QLabel *label = new QLabel("Hello QT", 0);
  app.setMainWidget(label);
  label->show();
  return app.exec();
}

这个是《C++ GUI Programming With QT 3》书上的第一个例子,我把给程序放在QT\4.1.1\EXAMPLES\T17下,然后QMAKE -PROJECT, QMAKE, MAKE三个步骤,但在最后的步骤中出现了以下错误:
main.cpp: In function 'int qMain(int, char**)':
  main.cpp:34: error: 'class QApplication' has no member named 'setMainWidget'
  mingw32-make[1]: ***[tmp\obj\debug_shared\main.o] Error 1
  mingw32-make[1]: Leaving directory 'D:/QT/4.1.1/examples/tutorial/t17'
  mingw32-make: ***[debug-all] Error 2

但是如果我使用该/TUTORIAL/T1下面的MAIN.CPP同样COPY到/TUTORIAL/T17下,然后和上面的步骤一样,就不会出现任何错误.
离线xuxinshao

只看该作者 1楼 发表于: 2006-03-28
Qt3和Qt4有点不通,要看仔细点,Qt4中不需要app.setMainWidget(label);这句了,你去掉这句再编译看看,是不是能成功。

好像这样的问题好几个人问过,仔细看代码就能找出原因的
离线mylovetus
只看该作者 2楼 发表于: 2006-03-28
谢谢楼上的兄弟,不好意思,我今天才刚开始接触到QT,
我刚也看到了这个问题, 但是不知道为什么等我重新启动电脑的时候, 我再用上面的步骤发现出现了根本不能MAKE的问题.
离线XChinux

只看该作者 3楼 发表于: 2006-03-29
重新生成.pro,然后再编译试试。
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
快速回复
限100 字节
 
上一个 下一个