等了几个月,QT5终于出5.1正式版了,直接下载QT5.1 for vs10版本安装即可。
一. 目录层次
目录下面就只有一个msvc2010和src,针对不同的编译器一个目录, 目录下面连Demos and Example也没有了,看来得自己编译示例代码.
从QT5.0开始,就内置了QtCreator工具,在安装时默认安装,位于$(QTDIR)/Tools/QtCreator/bin目录下
二. QtCreator 工具
QtCreator2.6.x 的后续版本编译程序时生成目录非常变态, 例如工程d:/test,对应生成目录则变成d:/build-test-Desktop_Qt_5_1_0_MSVC2010_32bit-Debug, 我们可以通过设置让其直接在当前目录生成可执行文件.
工具菜单 -> 选项 -> 构建程运行 -> Default build directory 输入".",表明在当前目录生成
三. 编译运行
code后编译出错: 错误:C1083: 无法打开包括文件:“QApplication”: No such file or directory, 竟然连这个普通类都找不到了.
出错原因: Qt5里不再用QtGui模块,而是使用QtWidgets模块。解决方法: 在.pro里加上QT += widgets
四. 扩展模块
1. Qt Serial Port
QT扩展串口类, 提供硬件或者虚拟串口的接口,终于不需要使用第三方接口库了
2. Qt Sensors
为传感器硬件和动作手势识别提供QML和C++接口,这个应该是与手机开发有关的接口
五. QT5中文乱码
如代码中有中文,windows下会出现乱码。用QT linguist 执行国际化可以解决该问题,但是过于繁琐。
对于msvc2010及以上版本,可直接设置执行字符集解决乱码问题。
#if _MSC_VER >= 1600
#pragma execution_character_set("utf-8")
#endif
六. windows下启动报错
上面提示缺少platform插件,该插件存在$APP/plugins/platforms/qwindows.dll,但是代码已经指定插件目录:
qApp->addLibraryPath(QApplication::applicationDirPath() + "./plugins");
解决方案:直接在platforms拷贝至与plugins同级目录,程序运行正常,的确有点不合常理。