小编给大家分享一下PyQt 5怎么设置Logo图标和Title标题,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!
创新互联专注于洪山企业网站建设,成都响应式网站建设,电子商务商城网站建设。洪山网站建设公司,为洪山等地区提供建站服务。全流程按需求定制开发,专业设计,全程项目跟踪,创新互联专业和态度为您提供的服务最近在学习Python GUI开发,之前一直都是做的C++ GUI开发,用到的大部分是框架,主要有MFC、DuiLib和Qt。哦,如果想省时省力,可以使用Qt WebEngine+H5开发界面哦,只有你Web前端基础不错的话。
使用PyQt 5开发界面,真的很方便,不用写太多代码,20行左右就可以出现简单的带图标GUI,不信你可以看看下面代码:
import sys from PyQt5.QtGui import QIcon from PyQt5.QtWidgets import QApplication, QWidget class Logo(QWidget): def __init__(self): super().__init__() self.initUI() def initUI(self): # self.setGeometry(300, 300, 300, 220) self.setWindowTitle('MyLogo') # self.move(300, 300) self.setWindowIcon(QIcon('Logo.png')) self.show() if __name__ == "__main__": app = QApplication(sys.argv) ex = Logo() sys.exit(app.exec_())
Logo.png图片是这样的:
运行结果:
这是我按照教程上面写的代码,可是图标处并没有被修改为自己想要的效果,还是默认的图标。
后来我想了想,应该是图片格式的问题,一般我们使用做图标的图片格式为icon,所以我就对png格式进行转换,在线转换的网站有:
https://www.easyicon.net/covert/
http://www.bitbug.net/
转换完毕之后,就变成icon格式了,把名字修改为Logo.ico,然后扔到代码目录下面,代码修改:
self.setWindowIcon(QIcon('Logo.ico'))
再次运行:
现在就是自己想要的结果。
有时你按照教程敲代码时,可能没有出现预期的效果,那么可能是自己的一些资源出现了问题,比如我这次出现的格式问题,那么你应该多做一些项目,到时候就触类旁通了。
补充:PyQt5 QLabel改变字体和设置背景图片
self.lab = QLabel("标签字体大小颜色", self) self.lab.setGeometry(50,50,300,200) self.setStyleSheet("QLabel{color:rgb(225,22,173,255);font-size:50px;font-weight:normal;font-family:Arial;}")
color:rgb()中的四个参数,前三个是控制颜色,第四个控制透明度
font-size:设置字体大小
font-weight:bold可设置字体加粗
font-family:选择自己想要的颜色
setStyleSheet同时可以设置标签背景图片,但无法使图片与标签大小匹配
self.lab = QLabel('标签背景图片', self) self.lab.setGeometry(50,50,300,200) pixmap = QPixmap('F:\A_code\PyQT_Demo\\1.png') self.lab.setPixmap(pixmap)
但是这个时候我们添加的背景图片依然无法和标签大小相匹配
这需要修改一下我们的实例化QPixmap部分
pixmap=QPixmap('F:\A_code\PyQT_Demo\\1.png').scaled (self.lab.width(), self.lab.height())
或者修改lab的属性:self.lab.setScaledContents(True)
看完了这篇文章,相信你对“PyQt 5怎么设置Logo图标和Title标题”有了一定的了解,如果想了解更多相关知识,欢迎关注创新互联行业资讯频道,感谢各位的阅读!
当前题目:PyQt5怎么设置Logo图标和Title标题-创新互联
分享链接:https://www.cdcxhl.com/article2/jedoc.html
成都网站建设公司_创新互联,为您提供网页设计公司、企业建站、App设计、微信小程序、定制网站、云服务器
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联