VS2013
Qt 5.3 VS2013 Opengl
Windows 8.1
Photoshop CC
首先绘图工具中设计好图标,我这里用的ps。
创建的工程分辨率最好是512 * 512或者256 * 256。画好之后导出png,待用。
图标需要用*ico的文件,ps不支持导出这种格式,可以通过添加插件的形式搞定,但是我没有找到对应版本的插件,所以这里用个比较偷懒的方法。
去这个网站 - http://converticon.com/,直接几步就可以将png图片转换成ico格式了。
延伸阅读 - ico格式 wiki
想再偷懒一点,直接去这里下载,大量好看免费的图标。
首先将刚才的app.ico放到 yourProjectFolder/Resources/images/app.ico,或者任意一个程序可以找到的位置。
代码很简单
QIcon c("./Resources/images/app.ico"); this->setWindowIcon(c);
编译运行。
VS中,项目上右击,添加,资源,确定之后项目中就会出现一个 projectname.rc 的文件。
双击Pixer.rc,右击添加资源
选择icon,然后导入
选定之前做好的icon文件,默认这个就是程序的图标了!
再次编译,运行
可执行程序的图标已经改变。
当要把你的程序分享出去的时候,不可能把编译的目录拷贝给别人去运行。编译好的程序应该是一个主程序,加一些资源文件,再加一些动态链接库,高大上一些的还可以做一个安装文件。
这里就用最简单的动态链接库的形式发布,这样只要拿到程序的压缩包,解压后就可以运行了。
创建一个文件夹,将编译好的release目录下的*.exe文件拷贝过去,再将用的资源文件夹拷贝过去,再去X:\Qt\Qt5.3.2\5.3\msvc2013_64_opengl\bin下面,将需要的dll拷贝进去。最后的样子应该是这样
platforms文件夹里面是qwindows.dll。qwindows.dll一定要放在platforms文件夹里面。不然会报错
Application failed to start because platform plugin “windows” is missing
这时候双击exe就可以执行程序,但是可能会同时弹出一个终端调试窗口。进VS,右击项目-> 属性。
重新编译,这时候终端窗口就不会弹出来了。
在64位机器上编译32位的程序
首先要装一个32位的Qt程序,版本号与64位的一致。
VS中设置编译win32项目时要链接的版本库。
选择编译目标为win32就Ok了。