PyQt5 – 为单选按钮添加动作

下面是Python的“PyQt5 - 为单选按钮添加动作”的完整使用攻略。

1. 安装PyQt5

在使用PyQt5之前,我们需要先安装它。可以通过pip来安装:

pip install PyQt5

2. 创建单选按钮

首先,我们需要在GUI程序中创建一个单选按钮。可以使用QRadioButton

from PyQt5.QtWidgets import QApplication, QWidget, QRadioButton

app = QApplication([])
win = QWidget()

rb1 = QRadioButton('Option 1', win)
rb2 = QRadioButton('Option 2', win)

win.setGeometry(100, 100, 300, 200)
win.show()
app.exec_()

在以上示例中,我们创建了两个单选按钮rb1rb2,并将它们添加到了窗口win中。

3. 添加动作

现在我们需要为单选按钮添加动作。可以通过toggle信号来实现。

from PyQt5.QtWidgets import QApplication, QWidget, QRadioButton

app = QApplication([])
win = QWidget()

rb1 = QRadioButton('Option 1', win)
rb2 = QRadioButton('Option 2', win)

def on_radio_button_toggled():
    print('Option 1:', rb1.isChecked())
    print('Option 2:', rb2.isChecked())

rb1.toggled.connect(on_radio_button_toggled)
rb2.toggled.connect(on_radio_button_toggled)

win.setGeometry(100, 100, 300, 200)
win.show()
app.exec_()

在以上示例中,我们定义了一个on_radio_button_toggled函数来处理单选按钮的toggle信号。函数中使用isChecked方法来检查单选按钮的选中状态,并输出结果。

然后,我们将on_radio_button_toggled函数与两个单选按钮的toggle信号连接起来,这样当单选按钮的状态发生改变时,就会自动执行定义的函数。

示例1

现在,我们来看一个更加实际的示例:根据选中的单选按钮,改变窗口背景颜色。

from PyQt5.QtWidgets import QApplication, QWidget, QRadioButton

app = QApplication([])
win = QWidget()

rb1 = QRadioButton('Red', win)
rb2 = QRadioButton('Green', win)

def on_radio_button_toggled():
    if rb1.isChecked():
        win.setStyleSheet("background-color: red;")
    elif rb2.isChecked():
        win.setStyleSheet("background-color: green;")

rb1.toggled.connect(on_radio_button_toggled)
rb2.toggled.connect(on_radio_button_toggled)

win.setGeometry(100, 100, 300, 200)
win.show()
app.exec_()

在以上示例中,我们创建了两个单选按钮rb1rb2,一个on_radio_button_toggled函数来处理单选按钮的toggle信号,使用setStyleSheet方法来改变窗口的背景颜色。

示例2

我们还可以将单选按钮放在一个按钮组中,并在其中选中一个时取消其他单选按钮的选中状态。

from PyQt5.QtWidgets import QApplication, QWidget, QRadioButton, QButtonGroup, QVBoxLayout

app = QApplication([])
win = QWidget()

rb1 = QRadioButton('Option 1', win)
rb2 = QRadioButton('Option 2', win)
rb3 = QRadioButton('Option 3', win)

group = QButtonGroup()
group.addButton(rb1, 1)
group.addButton(rb2, 2)
group.addButton(rb3, 3)
group.buttonClicked.connect(lambda: print(group.checkedId()))

vbox = QVBoxLayout()
vbox.addWidget(rb1)
vbox.addWidget(rb2)
vbox.addWidget(rb3)
win.setLayout(vbox)

win.setGeometry(100, 100, 300, 200)
win.show()
app.exec_()

在以上示例中,我们创建了三个单选按钮rb1rb2rb3,并将它们添加到了一个垂直布局中。然后我们创建了一个按钮组group,并将三个单选按钮添加到其中。

然后我们定义了一个Lambda函数来处理按钮组的buttonClicked信号。这个函数使用checkedId方法来查找选中的单选按钮的ID,并输出结果。

最后,我们将布局设置为窗口的布局并显示窗口。

以上就是Python的“PyQt5 - 为单选按钮添加动作”的完整使用攻略。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:PyQt5 – 为单选按钮添加动作 - Python技术站

(0)
上一篇 2023年5月10日
下一篇 2023年5月10日

相关文章

  • PyQt5 QLabel 添加模糊效果

    下面就是Python PyQt5中如何添加模糊效果的完整攻略。 安装PyQt5与pillow 在使用PyQt5添加模糊效果之前,需要先安装 PyQT5 和 pillow库。如果你已经安装了这两个库,可以直接跳过这一步。 如果你使用的是Anaconda,可以使用下面的命令来安装这两个库: conda install -c anaconda pyqt conda…

    python 2023年5月13日
    00
  • PyQt5 QSpinBox – 检查值是否在中心位置

    PyQt5 QSpinBox控件是用户在数字输入中一个非常常见的工具。在某些使用情境下,会有这样的需求:用户输入的数字不能过大或者太小,否则界面效果会受到影响。那么如何实现这个需求呢? 本文将向大家详细介绍PyQt5 QSpinBox控件如何进行“检查值是否在中心位置”的设置。步骤如下: 设置SpinBox 在PyQt5中,我们可以通过setRange方法来…

    python 2023年5月12日
    00
  • PyQt5 – 检查单选按钮是否从左到右排列

    PyQt5是Python编程语言的GUI框架,可以快捷地创建功能强大的图形用户界面。在PyQt5中,可以实现单选按钮的左右排列,并通过相应的API来检查单选按钮是否从左到右排列。本文将提供PyQt5 – 检查单选按钮是否从左到右排列的完整使用攻略。 检查单选按钮是否从左到右排列 – 原理 PyQt5提供了QBoxLayout类作为布局管理器,用于管理窗口中各…

    python 2023年5月10日
    00
  • PyQt5 – 进度条的minimum()方法

    PyQt5是针对Qt软件开发框架的Python绑定,它提供了许多用于图形界面开发的组件。其中,进度条(QProgressBar)是一种非常常见的界面元素,可用于显示一个任务的完成进度。在进度条中,minimum()方法可以用于获取进度条的最小值。下面,我们将详细解释如何使用minimum()方法。 1. 获取进度条的最小值 使用minimum()方法可以轻松…

    python 2023年5月10日
    00
  • PyQt5 QSpinBox – 获取字符的边界矩形

    下面是关于PyQt5 QSpinBox控件获取字符的边界矩形的完整使用攻略: 什么是PyQt5 QSpinBox控件? 在开始详细讲解如何获取字符的边界矩形之前,我们需要先了解一下PyQt5 QSpinBox控件。QSpinBox是PyQt5中的一个控件,用于输入数字。在QSpinBox中,可以通过用户输入或者代码设置一个数值,也可以通过箭头按钮来控制数值的…

    python 2023年5月12日
    00
  • PyQt5 – 未选中状态下被按下的单选按钮的背景图片

    如何设置 PyQT5 单选按钮的未选中状态下的背景图片? 1.概述Pyqt5 可以用 QSS 来实现单选按钮的样式互动。QSS 是一种 CSS 样式表语言的变体,可以设置 PyQt5 窗口上控件的外观。通过QSS,可以让单选按钮实现很多 CSS 中的特效。 2.设置方式在PyQT5中,通过setStyleSheet()后定义QSS代码,可以设置控件的背景颜色…

    python 2023年5月10日
    00
  • PyQt5 QSpinBox – 访问显示整数基数

    PyQt5是Python中常用的GUI库之一,它提供了各种各样的UI控件,包括选择框SpinBox控件。 SpinBox是一种用户界面控件,用于在一定范围内选择整数值。QSpinBox是PyQt5中的SpinBox控件,它支持访问和丰富的显示控制。 访问整数基数 QSpinBox控件默认的整数基数为10,但我们也可以通过setBase()方法来改变它。这个方…

    python 2023年5月13日
    00
  • PyQt5 QListWidget – 获得当前项改变信号

    下面是PyQt5 QListWidget-获得当前项改变信号的完整使用攻略。 前置知识 在学习本教程之前,您需要掌握以下基础知识: Python基础语法 PyQt5基础知识 QListWidget简介 QListWidget是PyQt5中的一种列表控件,其显示方式为列表项,支持单选、多选等模式,并且可以添加各种类型的组件,例如复选框、进度条等。 获得当前项改…

    python 2023年5月13日
    00
合作推广
合作推广
分享本页
返回顶部