文档章节

Qt中为工程添加资源文件、给按钮添加图片

天蚕宝衣
 天蚕宝衣
发布于 2017/03/19 17:40
字数 684
阅读 62
收藏 0
点赞 0
评论 0

上一次布局好之后做了小小的改动,就是在左边放按钮的上面添加了一个放logo的label(虽然还没有想好要放什么logo—— )

现在的布局就是这样子了:

下面要做的是给按钮添加图标,还有在logo和右边的大label上放上初始的图片,这里就需要为工程添加资源文件了,步骤如下:

1、右击项目文件夹选择添加新文件——选择Qt——Qt resource file

2、填写好name后点下一步、完成,然后双击项目中生成的.qrc文件,点击添加,选择添加前缀

2、添加好前缀之后就可以添加文件了,选择需要添加的文件,这里需要把需要添加的文件先放到项目目录下的一个文件夹下,添加好之后保存,就能在资源浏览器中看到了,也就能在代码中引用了。

明天就可以把图标和logo添加上去了

——————————————————————————————————————————

/******

这里有个小插曲,我发现一开始我的movie都写成了moive ,以为要一个个改感觉好麻烦,后来发现可以将光标移动到需要更改的变量上,按Ctrl + Shift + R,这样就能把项目中的这个变量名称一起改掉了

********/

回到正题——给按钮添加图标,一共分为以下几步:

1、申明一个QIcon对象用来存放图标

[cpp] view plain copy

  1. QIcon button_ico(":/new/icon/srcs/movieclicked.png");  

2、按钮对象调用setIcon()函数把图片加载到button上

[cpp] view plain copy

  1. button_movie->setIcon(button_ico);  

运行一下发现按钮的大小和图标的大小都感觉很别扭:

我想最好能图标变大一点,然后按钮和图标一样大。

但是发现无论是在将button放到layout之前还是之后调用QPushButton的resize()函数都没有效果。

我想因为是放在layout里就算是resize后也会根据窗口的大小又自动改掉,所以就直接把按钮的最大最小值设置为一样就行了:

[cpp] view plain copy

  1. QIcon button_ico(":/new/icon/srcs/movieclicked.png");  
  2.    button_movie = new QPushButton;  
  3.    button_movie->setMinimumSize(33,33);  
  4.    button_movie->setMaximumSize(33,33);  
  5.    button_movie->setIcon(button_ico);  
  6.    button_movie->setIconSize(QSize(28,28));  

效果就是这样的:(下面图案边框可以去掉,button_movie ->setFlat(ture)            http://jingyan.baidu.com/article/cd4c29791c3e16756f6e6043.html)

图标添加完了,接着就把logo和右边的label上添加上图片

添加图片部分的代码如下:

[cpp] view plain copy

  1. logo_label = new QLabel("LOGO");        //添加图片  
  2. QImage *logo_img = new QImage(":/new/label/srcs/logo.png");  
  3. QImage *scaled_logo_img = new QImage();  
  4. *scaled_logo_img=logo_img->scaled(150,120,Qt::KeepAspectRatio);  
  5. logo_label->setPixmap(QPixmap::fromImage(*scaled_logo_img));  

右边图片的添加方法和这个logo是一样的。

本文转载自:http://blog.csdn.net/yansmile1/article/details/52910083

共有 人打赏支持
天蚕宝衣
粉丝 18
博文 236
码字总数 178069
作品 0
天津
Qt自定义控件的创建与初步使用

本篇博客的目的是简单介绍:创建一个用QLabel类来显示图片的自定义控件的编写。在写自定义控件的过程中遇到了很多的难题,但都慢慢解决了,本人对Qt自定义控件的认识还不深刻,做的不对的地方...

qq_15094525 ⋅ 2017/01/06 ⋅ 0

【Qt笔记】资源文件

Qt 资源系统是一个跨平台的资源机制,用于将程序运行时所需要的资源以二进制的形式存储于可执行文件内部。如果你的程序需要加载特定的资源(图标、文本翻译等),那么,将其放置在资源文件中...

大道无名 ⋅ 2016/07/29 ⋅ 0

《Genesis-3D游戏引擎系列教程-进阶篇》3:转动的球体

注:本系列进阶教程仅针对引擎编辑器:v1.2.2及以下版本 转动的球体 资源下载 工程文件 当我们掌握了一些Genesis-3D编辑器的操作技巧之后,现在来尝试着做一个非常简单的游戏,一个转动的球体...

Genesis-3D ⋅ 2014/01/20 ⋅ 0

Qt使用教程之指定生成设置(二)

<Qt Enterprise最新版下载> 在指定生成设置(一)一文中,我们为大家介绍了编辑生成配置、启动外部进程、使用环境变量以及使用Qt Creator变量等内容。在本文中我们将继续为大家介绍如何生成步...

Miss_Hello_World ⋅ 2015/11/12 ⋅ 0

QT工程中使用图片的三种方法

图片是一种资源,而在Qt中,对于资源的使用是有其独特的方式的! ①:一般来说:资源在内存中是用资源对象树来表示的,该树在程序启动时创建。 ②:而对于资源而言:我们都是需要先将其加入到...

晨曦之光 ⋅ 2012/04/13 ⋅ 0

Qt中动态加载窗口

在编程中,我经常会遇见要根据用户触发按钮,动态生成窗口的情况。在此有两种方法可以动态生成窗口:一:直接在槽函数中调用窗口类。二:将**.ui添加到资源文件,通过QUiLoader加载。 现将两...

乔三爷 ⋅ 2017/08/06 ⋅ 0

VC++2005 编写只有资源文件的DLL及其调用方法

VC++2005 编写只有资源文件的DLL及其调用方法 作者:邵盛松 2009年5月2日 目的:将图片,图标等存入 DLL中,然后在其他程序中调用 本文示例是将bitmap文件添加到dll中然后在dll中调用 第一步:...

晨曦之光 ⋅ 2012/05/23 ⋅ 0

中国智能设备制造企业股份有限公司/LibQQt

LibQQt LibQQt全名QQt Foundation Class。 LibQQt为基于Qt开发的App提供中间问题处理层,适配桌面、嵌入式以及Android、IOS的开发。 LibQQt为用户自动生成Library SDK,主动帮助用户发布App...

中国智能设备制造企业股份有限公司 ⋅ 04/16 ⋅ 0

Qt小程序(七)——获取文件夹和文件路径

目录 前言 这篇博文躺在草稿箱里很久了,一直没有完成!主要时间一过,就忘记了原来要写什么 内容了!记得在哪里看过这句话:今天的事如果不完成,或许你永远都不会完成了!这里把这篇博文就...

simonforfuture ⋅ 01/26 ⋅ 0

Qt使用教程创建移动应用程序(二)

<Qt Enterprise最新版下载> 创建Accelbubble主视图 当您倾斜设备时应用程序的主视图会显示一个SVG泡沫图像在屏幕上移动。为了在项目中使用Bluebubble.svg,您可以将其复制到项目目录中(QML...

Miss_Hello_World ⋅ 2016/01/06 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

中标麒麟(龙芯版)7.0优盘安装

########################################## 制作U盘安装盘: 1.准备U盘: PMON环境下U盘必须格式化成ext3; 昆仑固件环境下可以格式化成ext3,ext4 2.把整个镜像 xxx.iso 复制到U盘下面 3....

gugudu ⋅ 22分钟前 ⋅ 0

老司机写的大数据建模五步走

本文将尝试来梳理一下数据建模的步骤,以及每一步需要做的工作。 01 第一步:选择模型或自定义模式 这是建模的第一步,我们需要基于业务问题,来决定可以选择哪些可用的模型。 比如,如果要预...

gulf ⋅ 31分钟前 ⋅ 0

PacificA 一致性协议解读

PacificA 的 paper 在 08 年左右发出来的,比 Raft 早了 6,7 年。 在 PacificA 论文中,他们强调该算法使用范围是 LAN (Local Area Network),讲白了就是对跨机房不友好。 不管是 ZAB,Raf...

黑客画家 ⋅ 33分钟前 ⋅ 0

盘符图标个性化

设置自己的专属盘符图标 准备ico格式的图片文件一个,在根目录下创建autorun.inf文件 文件内容 [Autorun]icon=logo.ico 重新启动或者插拔U盘即可看到结果...

阿豪boy ⋅ 33分钟前 ⋅ 0

Windows下QQ聊天记录中图片的默认存放位置

Windows下QQ聊天记录中图片的默认存放位置在设置中是没有说明的。 实测位置在:D:\Documents\Tencent Files\974101467\Image 其中: “974101467”为对应的QQ号; “C2C”为个人之间的聊天图...

临江仙卜算子 ⋅ 40分钟前 ⋅ 0

GC 的三种基本实现方式

参考资料《代码的未来》(作者: [日] 松本行弘)。 由于并非本人原著(我只是个“搬运工“),SO 未经本人允许请尽情转载。 另外个人像说明一下这里所说的GC指泛指垃圾回收机制,而单指Jav...

xixingzhe ⋅ 41分钟前 ⋅ 0

Android双击退出

/** * 菜单、返回键响应 */ @Override public boolean onKeyDown(int keyCode, KeyEvent event) { // TODO Auto-generated method stub if(keyCode......

王先森oO ⋅ 45分钟前 ⋅ 0

idea 整合 vue 启动

刚学习Vue 搭建了一个项目 只能命令启动 Idea里面不会启动 尝试了一下修改启动的配置 如下: 1.首先你要保证你的package.json没有修改过 具体原因没有看 因为我改了这个name的值 就没办法启动...

事儿爹 ⋅ 50分钟前 ⋅ 0

redis在windows环境的后台运行方法

在后台运行,首先需要安装redis服务,命令为 redis-server.exe --service-install redis.windows.conf --loglevel verbose 启动,命令为 redis-server --service-start 停止,命令为 redis-...

程序羊 ⋅ 54分钟前 ⋅ 0

比特币现金开发者提出新的交易订单规则

本周,四位比特币现金的四位开发者和研究员:Joannes Vermorel(Lokad),AmaurySéchet(比特币ABC),Shammah Chancellor(比特币ABC)和Tomas van der Wansem(Bitcrust)共同发表了一篇关...

lpy411 ⋅ 57分钟前 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部