📜  PyQt5 - 单选按钮的描述(1)

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

PyQt5 - 单选按钮的描述

简介

在 PyQt5 中,单选按钮是常见的 GUI 元素之一。它们通常用于让用户从几个可选项中选择一个,而不能同时选择多个选项。

使用语法

创建一个单选按钮的语法如下:

QRadioButton(self, str)

其中 self 是指对当前窗口的引用,而 str 是指单选按钮的文本。

例如,我们可以创建一个名为 radio_button 的单选按钮并将其添加到窗口中:

from PyQt5.QtWidgets import QWidget, QRadioButton, QVBoxLayout

class MyWindow(QWidget):
    def __init__(self):
        super().__init__()
        radio_button = QRadioButton('Choose me')
        layout = QVBoxLayout()
        layout.addWidget(radio_button)
        self.setLayout(layout)
获取单选按钮的状态

我们可以使用 isChecked() 函数来检查单选按钮是否被选中,如果被选中则返回 True,否则返回 False

我们可以创建一个包含两个单选按钮的窗口,并检查它们的状态:

from PyQt5.QtWidgets import QWidget, QRadioButton, QVBoxLayout

class MyWindow(QWidget):
    def __init__(self):
        super().__init__()
        self.radio_button1 = QRadioButton('Option 1')
        self.radio_button2 = QRadioButton('Option 2')
        layout = QVBoxLayout()
        layout.addWidget(self.radio_button1)
        layout.addWidget(self.radio_button2)
        self.setLayout(layout)

    def check_radio_button(self):
        if self.radio_button1.isChecked():
            print('Option 1 selected')
        elif self.radio_button2.isChecked():
            print('Option 2 selected')
        else:
            print('No option selected')
示例

以下是一个包含多个单选框的示例窗口:

from PyQt5.QtWidgets import QWidget, QRadioButton, QVBoxLayout

class MyWindow(QWidget):
    def __init__(self):
        super().__init__()
        self.radio_button1 = QRadioButton('Option 1')
        self.radio_button2 = QRadioButton('Option 2')
        self.radio_button3 = QRadioButton('Option 3')
        self.radio_button4 = QRadioButton('Option 4')
        layout = QVBoxLayout()
        layout.addWidget(self.radio_button1)
        layout.addWidget(self.radio_button2)
        layout.addWidget(self.radio_button3)
        layout.addWidget(self.radio_button4)
        self.setLayout(layout)

此外,我们可能还需要为单选按钮添加信号-槽机制,以便在单选按钮状态发生变化时接收通知。