读完总版主原创的“学习QT4初步编程”(原文请参考
http://www.qtcn.org/bbs/read.php?tid=29&fpage=1)觉得受益匪浅,在此先对总版主XChinux的工作表示感谢!!!!
下面是我用Vc.net 2003实现总版主原创的“学习QT4初步编程”附件中的ex5.rar源代码所遇见的问题:
第一步:我在Vc.net 2003中创建一个空project,把ex5.rar源代码中form1.h,form1.cpp,main.cpp添加到工程中,编译工程得到如下信息:
Compiling...
main.cpp
main.cpp(1) : fatal error C1083: Cannot open include file: 'QApplication': No such file or directory
form1.cpp
form1.cpp(1) : fatal error C1083: Cannot open include file: 'QMessageBox': No such file or directory
Generating Code...
Build log was saved at "file://f:\MyProgram\Qttest\Debug\BuildLog.htm"
Qttest - 2 error(s), 0 warning(s)
第二步:在菜单Tools->Options->Projects->Vc++ Directories->Include Files 加入Qt头文件所在路径。我的是:C:\Qt\include\,头文件改为#include <Qt/QApplication.h>
#include <Qt/QTranslator.h> #include <Qt/QMessageBox.h>#include <Qt/QString.h> 编译得到如下信息:
main.cpp
form1.cpp
Generating Code...
Linking...
LINK : error LNK2020: unresolved token (0A00000B) QString.__dtor
LINK : error LNK2020: unresolved token (0A000015) QListWidget.__dtor
LINK : error LNK2020: unresolved token (0A000019) QMainWindow.__dtor
LINK : error LNK2020: unresolved token (0A00001C) QWidget.__dtor
LINK : error LNK2020: unresolved token (0A00001F) QWidget.minimumSizeHint
LINK : error LNK2020: unresolved token (0A000021) ?staticMetaObject@Form1@@2UQMetaObject@@B
LINK : error LNK2020: unresolved token (0A000023) QGridLayout.__dtor
LINK : error LNK2020: unresolved token (0A00002A) QPushButton.__dtor
LINK : error LNK2020: unresolved token (0A000030) __imp_?shared_null@QListData@@2UData@1@A
LINK : error LNK2020: unresolved token (0A000032) QLineEdit.__dtor
LINK : error LNK2020: unresolved token (0A000046) QTranslator.__dtor
LINK : error LNK2020: unresolved token (0A00004A) QApplication.__dtor
LINK : fatal error LNK1120: 12 unresolved externals
Build log was saved at "file://f:\MyProgram\Qttest\Release\BuildLog.htm"
Qttest - 13 error(s), 0 warning(s)
---------------------- Done ----------------------
Build: 0 succeeded, 1 failed, 0 skipped
请问这是不是找不到qt的库的问题,如何解决???????
另外,我在Visual Studio .NET 2003 Command Prompt下对ex5.rar中原文件操作
lupdate form1.cpp -ts ex5_en.ts
把上面的ex5_en.ts文件复制两份,分别命名为ex5_zh_CN.ts和ex5_zh_TW.ts,翻译完这三个.ts文件后,运行lrelease命令,生成.ts对应的qm文件,再运行
qmake -project,qmake,nmake,
生成ex5.exe,把它拷贝到上层目录中,运行
ex5 zh_CN,ex5 en
结果正确,但运行ex5 zh_TW,结果与ex5 en运行结果一样,这是怎么回事???是不是Qt4安装有问题????急等!
再次感谢总版主XChinux!!!!!!!!!