📌  相关文章
📜  PyQt5 - 将皮肤设置为未选中的 RadioButton(1)

📅  最后修改于: 2023-12-03 15:03:56.112000             🧑  作者: Mango

PyQt5 - 将皮肤设置为未选中的 RadioButton

在PyQt5中,可以使用QSS(Qt样式表)来自定义和美化应用程序的外观。当涉及到设置RadioButton的样式时,你可能希望将未选中的RadioButton与选中的RadioButton样式有所区分。

以下是设置未选中的RadioButton样式的示例代码:

from PyQt5.QtWidgets import QApplication, QWidget, QVBoxLayout, QRadioButton
from PyQt5.QtGui import QIcon
from PyQt5.QtCore import Qt

stylesheet = '''
QRadioButton {{
    spacing: 10px;
    font-size: 16px;
}}

QRadioButton::indicator {{
    width: 20px;
    height: 20px;
}}

QRadioButton::indicator:checked {{
    image: url(checked.png);
}}

QRadioButton::indicator:unchecked {{
    image: url(unchecked.png);
}}
'''

class RadioButtonDemo(QWidget):
    def __init__(self):
        super().__init__()
        self.setWindowTitle("RadioButton Demo")
        self.setWindowIcon(QIcon("icon.png"))

        layout = QVBoxLayout()

        radio_button1 = QRadioButton("Option 1")
        radio_button2 = QRadioButton("Option 2")

        layout.addWidget(radio_button1)
        layout.addWidget(radio_button2)

        self.setLayout(layout)

        self.setStyleSheet(stylesheet)

if __name__ == '__main__':
    app = QApplication([])
    window = RadioButtonDemo()
    window.show()
    app.exec_()

在上面的示例中,我们使用QSS设置了未选中和选中RadioButton的样式。在QSS中,我们使用QRadioButton::indicator:uncheckedQRadioButton::indicator:checked选择器来分别设置未选中和选中状态的样式。在这个示例中,我们使用了两个图片checked.pngunchecked.png来表示选中和未选中状态。

这个示例仅仅是一个基本的演示,你可以根据自己的需求来定制RadioButton的样式。QSS提供了丰富的样式属性和选择器来满足你的需求。

希望这个例子能帮助你设置未选中的RadioButton的样式。使用QSS可以很方便地定制PyQt5应用程序的外观,使其与你的设计风格保持一致。