📅  最后修改于: 2023-12-03 15:33:51.327000             🧑  作者: Mango
在 PyQt5 中,我们可以使用 QRadioButton 控件创建单选按钮。在一些情况下,我们需要在单击单选按钮时更改单选按钮中的文本。本文将介绍如何在 PyQt5 中实现这个功能。
我们可以通过在单选按钮上设置事件监听器来实现在单击单选按钮时更改其文本的功能。在这个例子中,我们将使用 clicked
事件,它会在单选按钮被单击时触发。
from PyQt5.QtWidgets import QMainWindow, QApplication, QRadioButton
from PyQt5.QtCore import pyqtSlot
class RadioButtonDemo(QMainWindow):
def __init__(self):
super().__init__()
self.setWindowTitle('RadioButtonDemo')
self.setGeometry(300, 300, 350, 200)
self.initUI()
def initUI(self):
self.radioButton = QRadioButton('Personal', self)
self.radioButton.move(50, 50)
self.radioButton.clicked.connect(self.onRadioButtonClicked)
@pyqtSlot()
def onRadioButtonClicked(self):
if self.radioButton.isChecked():
self.radioButton.setText('Personal (selected)')
else:
self.radioButton.setText('Personal')
if __name__ == '__main__':
import sys
app = QApplication(sys.argv)
demo = RadioButtonDemo()
demo.show()
sys.exit(app.exec_())
在这个例子中,我们创建了一个名为 RadioButtonDemo
的主窗口类,并在其中添加了一个 QRadioButton 控件。我们使用 clicked
事件连接 onRadioButtonClicked
方法,然后在 onRadioButtonClicked
方法中检查是否选中了单选按钮,并更改其文本。
复制上述代码并将其保存为 radio_button_demo.py
文件。使用终端或命令提示符导航到该文件所在的目录,并运行以下命令:
python radio_button_demo.py
会显示一个 GUI 窗口,其中包含一个单选按钮。
当单选按钮被选中时,文本将更改为 Personal (selected)
,否则将更改为 Personal
。
通过使用 clicked
事件,我们可以在 PyQt5 中实现在单击单选按钮时更改单选按钮中的文本的功能。