📌  相关文章
📜  PyQt5 - 设置和访问单选按钮的名称(1)

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

PyQt5 - 设置和访问单选按钮的名称

PyQt5是一款流行的Python GUI框架,它提供了许多UI组件,例如单选按钮(RadioButton)。使用PyQt5,您可以轻松地创建单选按钮,对其进行操作并访问其名称。

创建单选按钮

要创建单选按钮,您需要使用QRadioButton()类。以下是创建一个简单的单选按钮的示例:

from PyQt5.QtWidgets import QApplication, QWidget, QRadioButton
import sys

class RadioButtons(QWidget):
    def __init__(self):
        super().__init__()

        self.setGeometry(100, 100, 300, 150)
        self.setWindowTitle('PyQt5 - Radio Buttons')

        self.male_button = QRadioButton('Male', self)
        self.male_button.move(20, 20)
        self.male_button.setChecked(True)

        self.female_button = QRadioButton('Female', self)
        self.female_button.move(20, 50)

if __name__ == '__main__':
    app = QApplication(sys.argv)
    radio_buttons = RadioButtons()
    radio_buttons.show()
    sys.exit(app.exec_())

在上面的代码中,我们使用QRadioButton()类创建了一个简单的单选按钮。在构造函数中,我们首先准备了窗口的几何和标题,然后创建了两个单选按钮:一个为Male,另一个为Female。我们使用move()函数将它们放置在窗口中的适当位置。最后,我们调用了setChecked(True)函数,以确保“Male”单选按钮处于选中状态。

访问单选按钮的名称

在PyQt5中,您可以使用text()函数访问单选按钮的名称。以下是一个示例代码,演示如何使用text()函数访问选中单选按钮的名称:

from PyQt5.QtWidgets import QApplication, QWidget, QRadioButton, QLabel
import sys

class RadioButtons(QWidget):
    def __init__(self):
        super().__init__()

        self.setGeometry(100, 100, 300, 150)
        self.setWindowTitle('PyQt5 - Radio Buttons')

        self.male_button = QRadioButton('Male', self)
        self.male_button.move(20, 20)
        self.male_button.setChecked(True)

        self.female_button = QRadioButton('Female', self)
        self.female_button.move(20, 50)

        self.gender_label = QLabel('Gender: Male', self)
        self.gender_label.move(20, 80)
        self.update_label()

        self.male_button.toggled.connect(self.update_label)
        self.female_button.toggled.connect(self.update_label)

    def update_label(self):
        if self.male_button.isChecked():
            self.gender_label.setText('Gender: Male')
        elif self.female_button.isChecked():
            self.gender_label.setText('Gender: Female')

if __name__ == '__main__':
    app = QApplication(sys.argv)
    radio_buttons = RadioButtons()
    radio_buttons.show()
    sys.exit(app.exec_())

在上面的代码中,我们首先创建了一个QLabel组件,用于显示用户选择的单选按钮的名称。我们还定义了一个名为update_label()的函数,该函数检查哪个单选按钮处于选中状态,并据此更新标签。

我们使用toggled信号将单选按钮与update_label()函数连接起来。每当用户单击单选按钮时,信号都会被发射,从而更新标签。

使用PyQt5,您可以轻松地创建单选按钮,并使用text()函数访问其名称。通过连接单选按钮的信号和自己的函数,您可以捕捉用户的选择并执行适当的操作。