PyQt5设计GUI(四)为控件添加图片

PyQt5设计GUI(三)多窗口跳转,信号和槽的使用

为控件添加图片

好看的窗口怎么能没有图片呢?一起来看看怎么给控件添加图片吧。

将图片导入资源浏览器

1.新建资源文件
用途,
导入图片资源,并将其转化成qrc文件
在这里插入图片描述
在这里插入图片描述

  • 1处的路径是生成的qrc文件要存储的位置
  • 2处填上qrc文件的文件名

2.向资源文件中导入图片

  • 添加前缀:这个前缀只是一个名称,相当于文件夹的名字一样,我们这了命名为png,还可以命名jpg等,可以用来区分不同类型的图片

在这里插入图片描述

  • 选择要添加的图片
    在这里插入图片描述

通过StyleSheet属性添加图片

资源导入完成之后,开始为控件添加图片。
在这里插入图片描述
在这里插入图片描述
点击倒三角,会出现三种模式:

  • backgroung-image:图片平铺在窗体上,不会自适应大小
    在这里插入图片描述

  • border-image:适应,含边框。将整个窗口填充满
    在这里插入图片描述

  • image:适应,不含边框。
    在这里插入图片描述
    注意:通过stylesheet添加图片的话,其子控件默认继承图片的背景
    如图:
    在这里插入图片描述
    在我添加的label控件里面,默认继承了父窗口的背景图片。
    解决办法:
    方法一: 在designer中
    在自动生成的代码之前加上#控件,表示对指定控件添加图片。
    在这里插入图片描述
    原代码

border-image: url(:/png/images/周杰伦.jpg);

修改之后的代码

#MainWindow{border-image: url(:/png/images/周杰伦.jpg);}

转换成py文件后:

        MainWindow.setStyleSheet("#MainWindow{border-image: url(:/png/images/周杰伦.jpg);}")

#MainWindow意思是指定MainWindow添加图片,而子控件不会继承图片背景

方法二:通过给控件添加图片背景覆盖继承来的背景
在这里插入图片描述
通过控件的pixmap属性添加图片,或者是stylesheet属性添加。

控件添加图片的方法

  • 控件继承自QMainWindow类,当然也有stylesheet属性,跟主窗口添加背景一样,选择图片即可添加。
  • 通过pixmap属性添加。

其他添加图片的方法

  • 使用QPalette设置窗口背景。
  • QPainter设置窗口背景。
    感兴趣的可以参考一下大佬文章:

Pyqt 设置 背景颜色和背景图片、 QPalette 调色板 与QPainter 画板区别 、 不规则图片…

当GUI做完,我们不能一直在pycharm中运行程序啊,得把程序打包成exe,在windows系统下运行。

下一节,我们一起打包程序,做出自己的第一个软件吧!
PyQt5设计GUI(五)多窗口程序打包为exe
参考书目:Python GUI设计(PyQt5从入门到实战)—明日科技

  • 11
    点赞
  • 56
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值