Pyqt5カスタムドロップダウンリストチェックボックステンプレートスタイル

効果:ここに画像の説明を挿入
ここに画像の説明を挿入
ここに画像の説明を挿入
QStyleは、GUIインターフェイスコンポーネントの外観をカプセル化する抽象クラスです。Qtは、QWindowsStyle、QMacStyleなどのさまざまなオペレーティングシステムで使用されるQStyleクラスのいくつかのサブクラスを定義します。これらのスタイルはQtCUIモジュールに付属しています。ノンストッププラットフォームでコンパイルおよび実行されるプログラムにはデフォルトのスタイルがあります。QApplication:: style()はアプリケーションのデフォルトのスタイルに戻ることができます
。Qtの組み込みスタイルを使用します。QStyleFactoryを使用できます。 :keys()実行中のプラットフォームでサポートされているスタイルのリストを取得し、QStyleFactory :: createを使用してスタイルを作成し、最後にQApplication :: setStyle()を使用してスタイルを設定します

 def __init__(self, parent=None):
        # 设置自定义样式
        super(WidgetGallry, self).__init__(parent)
        self.originalPalette = QApplication.palette()

        # 下拉列表
        style_comboBox = QComboBox()
        style_comboBox.addItems(QStyleFactory.keys())

        # 标签
        style_lable = QLabel('样式')
        style_lable.setBuddy(style_comboBox)

        # 复选框
        self.use_stander_checkbox = QCheckBox('使用标准样式')
        self.use_stander_checkbox.setChecked(True)

        #下拉列表选择不同的样式,进行更改
        style_comboBox.activated[str].connect(self.changeStyle)
        self.use_stander_checkbox.toggled.connect(self.changePalette)

 # 改变模板
    def changePalette(self):
        if self.use_stander_checkbox.isChecked():
            QApplication.setPalette(QApplication.style().standardPalette())
        else:
            QApplication.setPalette(self.originalPalette)

    # 改变样式
    def changeStyle(self, style_name):
        QApplication.setStyle(QStyleFactory.create((style_name)))
        self.changePalette()

おすすめ

転載: blog.csdn.net/angelsweet/article/details/114630422