如何实现QT界面插入图片与图标
本文参考了配置pycharm将.qrc转化为.py,原创不易,感谢支持!
在进行界面设计时或多或少会用到一些资源文件(视频,图片,图标,文档)是自己的界面更加丰富,如何将资源加载到你设计的界面指定位置呢?以加载图片为例
共分成三步:
1、编写.qrc文件
在QT designer界面设计中不能直接加如图片或图标等资源,需要在开发目录中编写.qrc文件(可以用记事本打开)
进入qt designer中后创建widget,使用资源浏览器创建.qrc文件找几张图片放在你的电脑里(能找到路径即可,我一般放在project目录里)右键刚刚创建的prefix文件,点击add file将你的图片添加进来。遇到问题点copy
正常结果如下:
向form里拖拽label,在属性编辑栏里找到pixmap,点击choose file,选择一个你喜欢的图片,这样label里就会加载你刚刚选的图片了。
保存.UI文件,会发现你的项目目录里出现.qrc文件和.ui文件,分别将他们转换成.py文件
获得的.qrc文件长这样
2、.qrc转化成.py教程请点击这里
3、.ui转化成.py请点击这里
4、创建逻辑文件
按照上面步骤走完,你会获得由.ui和.qrc文件转化而来的.py文件
为保证UI设计与逻辑分离,可以再创建一个逻辑文件calluntitled.py,编写如下程序
import sys
from PyQt5.QtWidgets import QApplication, QMainWindow
from untitled import Ui_Form#注意这里的UI文件名及其class名,根据自己定义的来
class MyMainWindow(QMainWindow, Ui_Form):
def __init__(self, parent=None):
super(MyMainWindow, self).__init__(parent)
self.setupUi(self)
if __name__ == "__main__":
app = QApplication(sys.argv)
myWin = MyMainWindow()
myWin.show()
sys.exit(app.exec_())
编译一下,出现结果如下则说明成功。
有啥问题欢迎留言,定尽力解答。
提个小问题,按照这个方法如何编辑界面图标呢?
1、储备知识:QIcon
QIcon 类代表图标,实现在 QtGui 共享库中。QIcon 对象可以认为是一系列图像的组合可以用于自定义你所开发的软件图标。
2、创建.qrc文件
同上
3、逻辑文件修改
我们要在逻辑文件中(即calluntitled.py)import QIcon
具体代码如下:
from PyQt5.QtGui import QIcon
然后在if name==“main”:函数中添加调用图片的语句
app.setWindowIcon(QIcon("./cartoon2.ico"))#字符串表示你的图片文件路径
如图
点击运行,出现如下界面