Как мне отредактировать стиль кнопки с помощью pyside2? - PullRequest
0 голосов
/ 11 июля 2019

Теперь я использую Pyside2 для создания пользовательского интерфейса, но стиль кнопки очень старый, как и в winxp. Я хочу, чтобы это было новее, но я не знаю, как это сделать, кто-нибудь знает, как это сделать?

теперь пользователь

что я хочу

Мой код такой:

class MainWindow(QMainWindow):

    def __init__(self, parent=None):
        QMainWindow.__init__(self, parent)
        self.open_directory_button = QPushButton("打开文件夹")
self.open_directory_button.clicked.connect(self.open_directory_button_clicked)
        self.path_layout = QHBoxLayout()
        self.path_layout.addWidget(self.path_edit)
        self.path_layout.addWidget(self.open_directory_button)
        self.main_layout = QVBoxLayout()
        self.main_layout.addLayout(self.path_layout)
        self.frame = QWidget(self)
        self.frame.setLayout(self.main_layout)
        self.setCentralWidget(self.frame)

Ответы [ 2 ]

0 голосов
/ 11 июля 2019

Вам нужно использовать setStyleSheet, смотрите это:

open_directory_button = QtWidgets.QPushButton()
open_directory_button.setStyleSheet("QPushButton:pressed{image:url(C:\image.png); border:none} QPushButton:hover{image:url(C:\image_hover.png); border:none}")
0 голосов
/ 11 июля 2019

Как я вижу, стиль второго изображения - "слияние", поэтому возможное решение:

import sys
from PySide2 import QtWidgets

app = QtWidgets.QApplication(sys.argv)
app.setStyle("fusion") # <----

# ...
...