Qt 窗体使用 label 标签插入静态图片
最近在做毕业设计,上位机软件用的Qt,界面当中需要加入学校校徽,结果百度了n多种方法,有用QPixmap的:
QPixmap myPix("./school.jpg");
ui->label_8->setPixmap(myPix);
ui->label_8->setScaledContents(true);
ui->label_8->show();
有在Qt Creator使用label的属性窗口进行pixmap设置的,也有用下面方法的:
label->setStyleSheet("background-image:url(图片路径)");
试了之后都不行,后来没办法采用播放 gif 格式动态图片的方法,勉勉强强插入了静态图片:
QMovie *myMovie = new QMovie(".\school.jpg");
ui->label_8->setMovie(myMovie);
ui->label_8->setScaledContents(true);
myMovie->start();
本以为这么糊弄糊弄插进去能看就行了,结果将源码拷贝到另一台电脑,又播放不出来了,这真蛋疼。。。于是又开始折腾,回想起当时在MFC中插入图片的方法,感觉Qt应该也可以试试看,没想到居然成功了。方法如下:
1.新建一个空的Qt图形界面工程,对话框或者是主窗口都行。
2.进到ui文件,拖一个label控件进去,然后点击file -> new file or projects选择如下:

保存路径为本工程,名称随便写,我这里写了resources,然后下一步。
3.在工程管理窗口,会出现建立的Resources文件夹,也会默认进入添加资源窗口,看图:

然后单击Add,选择Add Prefix,看图:

可以吧Prefix后面的/new/prefix1改名,懒的话就不用改了,我比较懒,这里就不改了。然后再点击Add,这时候多了个Add Files,这里说下,最好把图片文件放到本工程下面,为了省事、方便嘛,你看,只要一点Add Files,就立马可以选择图片了,不用费事的另找,对吧,然后添加即可,看图:

看图中就多了这么张图片,这时候最好点ctrl+s保存下,然后回到ui界面,找到label属性窗口,看图:

从pixmap的右面小三角符号里选择choose resource,这时候会发现啥也没有。。。

但东西我们确实加进去了,不信看工程管理目录。这里我退出选择资源窗口,然后编译下工程。然后再进来选择资源,就会发现确实进来了:

选择上图片,点击Ok即可发现ui界面当中的label有图了,这时候的图的比例肯定不匀称,需要选中label属性当中pixmap下面的那个scaledcontents框,就可以发现图在ui界面被缩放了。。。
4.ctrl+R,就可以发现运行之后的窗体确实加入了图片:

Qt 窗体使用 label 标签插入静态图片的更多相关文章
- Qt button按钮添加Label标签播放GIF图片
QPushButton btn = new QPushButton(); QVBoxLayout* layout = new QVBoxLayout(btn); QLabel* label = new ...
- fontsize可以解决img标签插入图片之间的缝隙
当我们用img标签连续插入多张图片的时候,图片和图片之间会出现缝隙,通常我们的做法是用DIV将图片包起来进行浮动来解决这个问题,但是还有一种解决方法是在img的父级元素里面设置font-size:0来 ...
- Qt make clickable label 制作可点击的Label控件
Qt中的Label标签控件的作用绝不仅仅限于显示静态文本,其实它的功能很强大,由于其有setPixmap()成员函数,故而可以当显示图片窗口使用,而且还可以实时显示摄像头捕获的图片,然后它对鼠标事件的 ...
- WPF自定义控件与样式(3)-TextBox & RichTextBox & PasswordBox样式、水印、Label标签、功能扩展
一.前言.预览 申明:WPF自定义控件与样式是一个系列文章,前后是有些关联的,但大多是按照由简到繁的顺序逐步发布的等,若有不明白的地方可以参考本系列前面的文章,文末附有部分文章链接. 本文主要是对文本 ...
- 【转】WPF自定义控件与样式(3)-TextBox & RichTextBox & PasswordBox样式、水印、Label标签、功能扩展
一.前言.预览 申明:WPF自定义控件与样式是一个系列文章,前后是有些关联的,但大多是按照由简到繁的顺序逐步发布的等. 本文主要是对文本输入控件进行样式开发,及相关扩展功能开发,主要内容包括: 基本文 ...
- 使用 Qt 获取 UDP 数据并显示成图片(2)
本文首发于 BriFuture 的 个人博客 在我的前一篇文章 使用 Qt 获取 UDP 数据并显示成图片 中,我讲了如何用 Python 模拟发送数据,如何在 Qt 中高效的接收 UDP 数据包并将 ...
- Tkinter 之Label标签
一.参数说明 语法 作用 Label(window,text=‘xxxxx’) 需要在界面显示的Label标签内容 Label(window,text=‘xxxxx’,height=2) 组件的高度( ...
- [Cocos2D-x For WP8]Label标签
Label标签主要会用于在游戏中显示一些文字字符串类型的信息.那么在Cocos2D-x里面主要会有下面的一些创建标签的方式: 1.使用CCLabelTTF类生成系统文字的标签,编程语法如下: CCLa ...
- 028、HTML 标签3表单标签插入组件
内容:表单标签插入组件(经常使用)############################################################## form表单标签和input组件 < ...
随机推荐
- Git初次使用总结,安装到上传代码,多平台[码云|github]
安装步骤 1.选择安装路径 2.选择创建图标,选择安装Git Bash和Git GUI 3.选择创建开始菜单 4.选择:use git and optional unix tools from the ...
- Ajax中返回数据的格式
Ajax中常见的返回数据的格式有三种:分别为文本,XML和JSON 返回的文本格式我们在上一堂课Ajax基础介绍中已经介绍过了 Ajax.php Form.html:通过Ajax对象的response ...
- luogu2024 食物链 (并查集)
把一个点拆成三个,分别对应它的同类.它的猎物和它的天敌,这样的话(以下的相等都是并查集意义上的): 如果令a,b同类,那么a的猎物不能是b的同类,a的天敌不能是b的同类 如果令a吃b,那么a的同类不能 ...
- 【bzoj1568】 JSOI2008—Blue Mary开公司
http://www.lydsy.com/JudgeOnline/problem.php?id=1568 (题目链接) 题意 在线维护若干条直线,询问一些横坐标上的最高直线的纵坐标. Solution ...
- linux 自定义信号
从来没试过linux自定义信号,查了下,说是系统只提供了SIGUSR1和SIGUSR2两个,就两个够吗?更要命的是如果要自定义信号如#define SIG_MYSIG ....的话要改内核才行,哥 ...
- 深入理解JVM结构
JVM结构探究---- 1.JVM结构示意图 2.JVM运行时数据区 1)程序计数器(Program Counter Register) 程序计数器是用于存储每个线程下一步将执行的JVM指令,如该方法 ...
- Python基础学习(六)
前几天一直在练手廖雪峰老师的python课程,接下来继续学习,由于面向对象编程这一课相对理论便不在此练手,直接上手面向对象高级编程. 一.使用 __slots__ 一般情况下一个class是可以绑定一 ...
- 代码实战之AdaBoost
尝试用sklearn进行adaboost实战 & SAMME.R算法流程,博客地址 初试AdaBoost SAMME.R算法流程 sklearn之AdaBoostClassifier类 完整实 ...
- udp之关于linux udp收发包缓冲区大小
1.修订单个socket的缓冲区大小:通过setsockopt使用SO_RCVBUF来设置接收缓冲区,该参数在设置的时候不会与rmem_max进行对比校验,但是如果设置的大小超过rmem_max的话, ...
- sklearn10-使用总结
sklearn实战-乳腺癌细胞数据挖掘(博主亲自录制视频) https://study.163.com/course/introduction.htm?courseId=1005269003& ...