📌  相关文章
📜  PyQt5 - 单击时更改单选按钮中的文本(1)

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

PyQt5 - 单击时更改单选按钮中的文本

在 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 中实现在单击单选按钮时更改单选按钮中的文本的功能。