PyQt:改变PyQt界面主题风格

Qt不仅功能强大、跨平台,还一个重要的因素是它生成的界面非常漂亮,且可以随意切换主题风格;本文将介绍如何使用Python获取当前系统支持的PyQt界面主题风格,以及如何切换使用它们;

获取本机支持的 PyQt 的风格

你可以使用QStyleFactory.keys()方法获取本机所支持的主题风格;它将返回一个 List :

PyQt Style

QStyleFactory 位于 PyQt5.QtWidgets 库中,使用它你需要先导入;

改变 PyQt 风格

你可以使用QApplication.setStyle()方法来改变主题风格,其传入参数使用QStyleFactory.create()方法创建:

QApplication.setStyle(QStyleFactory.create(styleName))

styleName为前文中通过QStyleFactory.keys()方法得到的风格名称;

完整示例代码:

from PyQt5.QtWidgets import (QDialog,QApplication,
                             QStyleFactory,QComboBox,
                             QLabel,QVBoxLayout)

class MainWindow(QDialog):
    def __init__(self, parent=None):
        super(MainWindow, self).__init__(parent)

        styleComboBox = QComboBox()
        #获取本机支持的主题,并添加到QComboBox中
        styleComboBox.addItems(QStyleFactory.keys())
        
        styleLabel = QLabel("Style:")

        #绑定槽函数,
        styleComboBox.activated[str].connect(self.changeStyle)
        
        self.vbox=QVBoxLayout()
        self.setLayout(self.vbox)
        self.vbox.addWidget(styleLabel)
        self.vbox.addWidget(styleComboBox)
        self.vbox.addStretch()

        self.setWindowTitle("Styles") #设置标题
        self.changeStyle('Fusion') #启动时使用Fusion风格

    #槽函数
    def changeStyle(self, styleName):
        #改变Style
        QApplication.setStyle(QStyleFactory.create(styleName))

if __name__ == '__main__':

    import sys
    app = QApplication(sys.argv)
    win = MainWindow()
    win.show()
    sys.exit(app.exec_())

原创内容,如需转载,请注明出处;

本文地址: https://www.perfcode.com/p/pyqt-style.html

分类: 计算机技术
推荐阅读:
C语言计算数组元素数量 使用sizeof()函数计算整个数组的内存占用大小,再计算单个元素的内存占用大小;以总内存占用大小除以单个元素的内存占用大小,得到的就是元素数量;
no new variables on left side of :=错误解决方法 Go语言中使用:=进行赋值导致no new variables on left side of :=错误,其原因是:=左侧没有新变量;
Python tuple元组 tuple(元组)类似于列表,但元组当中的项不能被修改。
Python open()函数 open()函数是Python中用于打开文件的内置函数。它可以打开一个文件,并返回一个文件对象,以便对文件进行读取、写入、追加等操作。
MATLAB使用误差扩散法进行图像半色调处理 误差扩散法(Error Diffusion)是一种常用的图像半色调处理方法,它的基本思想是通过将误差扩散到周围的像素点来逐渐逼近目标灰度值,从而实现图像半色调处理的效果。
gin及其依赖库完整下载和安装方法 因为在线安装Gin需要科学访问外网,所以你无法使用最简单的方式安装Gin;虽然有其它方法可以安装成功,但那些方法对萌新朋友们不够友好。所以我打包了Gin及其依赖库并上传到了百度网盘,并附上了安装方法。