📅  最后修改于: 2023-12-03 15:03:56.644000             🧑  作者: Mango
当使用PyQt5创建单选按钮时,我们可以自定义它们的外观。其中一个自定义方案是更改选中的单选按钮指示器的背景图像。
以下是更改选中单选按钮指示器背景图像的步骤:
创建单选按钮。在示例中,我们将创建两个单选按钮以演示。
self.radioButton1 = QRadioButton("选项1")
self.radioButton2 = QRadioButton("选项2")
创建未选中的和选中的单选按钮指示器的背景图像。使用QPixmap创建图像。
self.radioUnchecked = QPixmap("unchecked.png")
self.radioChecked = QPixmap("checked.png")
设置选中的单选按钮指示器的背景图像。
self.radioButton1.setStyleSheet("QRadioButton::indicator:checked {background-image: url(checked.png);}")
在上述代码中:
类似地,您可以使用以下代码设置未选中的单选按钮指示器的背景图像:
self.radioButton1.setStyleSheet("QRadioButton::indicator:unchecked {background-image: url(unchecked.png);}")
将单选按钮添加到布局中。
下面是一个完整的示例,演示如何更改选中的单选按钮指示器的背景图像。
import sys
from PyQt5.QtWidgets import QApplication, QWidget, QRadioButton, QVBoxLayout
from PyQt5.QtGui import QPixmap
class App(QWidget):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
self.radioButton1 = QRadioButton("选项1")
self.radioButton2 = QRadioButton("选项2")
self.radioUnchecked = QPixmap("unchecked.png")
self.radioChecked = QPixmap("checked.png")
self.radioButton1.setStyleSheet("QRadioButton::indicator:checked {background-image: url(checked.png);}")
self.radioButton1.setStyleSheet("QRadioButton::indicator:unchecked {background-image: url(unchecked.png);}")
vbox = QVBoxLayout()
vbox.addWidget(self.radioButton1)
vbox.addWidget(self.radioButton2)
self.setLayout(vbox)
self.setGeometry(100, 100, 200, 100)
self.setWindowTitle('选中的单选按钮指示器的背景图像')
self.show()
if __name__ == '__main__':
app = QApplication(sys.argv)
ex = App()
sys.exit(app.exec_())
在上述示例中,我们将unchecked.png和checked.png文件放在应用程序的工作目录中。您可以使用自己的图像文件。
这是使用PyQt5更改选中的单选按钮指示器的背景图像的简单步骤。希望这篇文章对您有所帮助!