您的位置:首页 > 编程语言 > Qt开发

vs中使用qt的qrc生成rcc资源文件

2015-06-23 10:20 393 查看
最近在开发一个IM软件,界面采用的是QT,数据库采用了SQLITE,由于我这个人能力有限,加上我也很菜,所以模块化是我唯一的选择,不知道大家有什么好的建议没有?谢谢!

我的是VS2008+QT集成开发环境。为了实现模块化,生成DLL是必不可少的。

我的原则是,尽量少的依赖QT,能用C++做的就不用QT,能做成DLL的就做成DLL,能独立分开的就独立!

如果只是想知道RCC的生成和使用,以下这段可以忽略!

我现在计划如下,先把界面设计出来(这个设计出来了,我借鉴了QQ的界面,由于我要把GUI做DLL,加上QT的样式表,

我可以在以后随意更改界面)。

设计好数据库(我目前只设计了用户表和好友表,由于我采用模块化设计,所以我要做到以后可以随意增删模块表,这个还没有完善的方案,只是有个大概的思路)。

编写GUI模块生成DLL(这里我考虑DLL最小化,但考虑到效率,目前还在犹豫中)。

下载SQLITE编译并做成独立模块(目前我已经编译好了SQLITE,本来想使用MYSQL的,可是不会编译,暂时就用着吧,

以后替换就是了,当然客户端还是要用SQLITE的,但是得考虑加密数据库才行,不知道大家有什么方法没?),

在把登陆界面做成DLL时,我遇到了一个问题,我使用了样式表设计界面,QT的样式表的确很强大,界面生成EXE文件后,

还可以通过样式文件改变界面的外观,这让我很高兴!当初我是想在程序中调用API设计界面的,后来发现这个方法太死板,

于是又想用QML,但是我不怎么会用,而且听说支持javacript形式的编程控制。我一听就来气,JS这个东西哥讨厌死它了,

还有那个什么JAVA的哥也不喜欢!所以最后哥选择了样式表!

样式表的确定很好用,最重要的是它和标准CSS类似,我熟悉CSS,所以样式表是个不错的选择,

如果你在用QT我建议你试一试样式表,你会喜欢上它的,也许它并不比API效率来的高,但是开发和维护是相当方便的,值得一用。

我想就算效率再怎么差,也应该比那个什么JAVA强吧!请原谅我讨厌JAVA!

QT保护发布软件中图片资源的安全方法

QT中有三种使用图片的方法

一、直接编译到EXE中,这个方法扩展性不好,我没用!

二、通过路径引用图片,比如样式表中这样用 background-image: url(info.png); 这样用很方便,

换风格只要更换一下图片就可以了!我原来就是这样用的,但是今天我发现一个很严重的问题,

如果我发布的软件被恶意修改了图片,而用户又不懂,这样的后果不可想象,所以我就开始找解决办法,GOOGLE一下,必现另一个方法!

三、生成RCC文件,在程序中调用用!

原文地地址http://qtdocs.sourceforge.net/index.php/Qt_%E8%B5%84%E6%BA%90%E7%B3%BB%E7%BB%9F

由于我这个人比较笨,所以我只学会使用rcc来编译图片文件,我的方法如下:

1.开始 -> 运行 -> cmd 然后回车就会弹出命令行界面 ,cmd是window下的dos

然后进入QT的安装目录,进入bin目录 进入img目录(这个img要你自己创建,进入目录的dos命令是cd)

2.在 img文件夹下新建一个名为img.qrc的文件 并复制一个名为info.png的图片到该img夹内,同时把bin下的rcc.exe文件复制到这个文件夹中

3.复制如下代码到img.qrc文件里保存

XML/HTML code?
现在你的img文件夹内应该有img.qrc文件,info.png文件和rcc.exe文件了

4.在cmd中运行如下命令

rcc -binary img.qrc -o img.rcc

注意 -binary 和 -o 中的-应该和后面的命令连在一起不然会出错的

回车后如果没提示什么就表示成功了,你可以到img文件夹内看一下,如果有一个img.rcc文件就表示成功了

5.新建一下QT GUI项目,

加入头文件#include <QResource>

在子类的构造函数中输入

C/C++ code?
生成运行你就会看到效果了
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: