- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
在我的项目中,我有 40 个 QPushButton
都放在一个 QButtonGroup
中,如下所示:
QButtonGroup* group = new QButtonGroup(this);
group->addButton(ui->slot_0);
group->addButton(ui->slot_1);
//...
group->addButton(ui->slot_38);
group->addButton(ui->slot_39);
每个按钮都是我设置为可检查的 QPushButton
。这样一次只能检查一个按钮。一切都很好,但是当其中一个按钮被选中时,我如何“制作一个插槽”?我不想有 40 个不同的插槽,每个按钮一个,最终都做基本相同的事情。有什么方法可以只使用我放入的 QButtonGroup
吗?
最佳答案
正如 Jamin 和 Nikos 所说:您应该创建自己的插槽来处理 QButtonGroup 发出的信号。它可能是这样的:
在头文件中:
public slots:
void buttonWasClicked(int);
在*.cpp 文件中:
void MainWindow::buttonWasClicked(int buttonID)
{
cout << "You have clicked button: " << buttonID << endl;
}
在负责创建 MainWindow 的代码中(即在构造函数中但不一定)应该有这一行:
connect(group, SIGNAL(buttonClicked(int)), this, SLOT(buttonWasClicked(int)));
请注意,自 Qt5 以来,连接语法已更改。我在这里使用的语法来自 Qt4。它仍然有效,但现在已弃用(有关更多信息,请参阅 New Signal Slot Syntax in Qt 5 )。此外,我建议阅读 QButtonGroup 类引用资料,因为还有其他可用信号比我选择的信号更能满足您的需求。
BR
关于c++ - 如何判断何时在 QButtonGroup 中单击 QPushButton,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17646422/
我正在编写一个基于 qt 的 C++ 应用程序。我有许多想要互斥的按钮 - 一次只能切换一个。我一般用QButtonGroup为此 - 它提供了一种很好的逻辑方法来管理按钮集。当一个按钮被按下时,之前
我正在使用 PyQt 编写一个向导程序。在第一页上,我想让用户在两个选项之间进行两次选择。因此我决定制作 Buttongroups。但是,尽管我将前两个单选按钮添加到第一个 Buttongroup,将
我正在尝试使用 QGroupBox 创建一组独占复选框(据我所知,默认情况下是独占的),但是当我运行我的程序时,这些复选框不是独占的,并且其行为与通常相同。 skillP = QCheckBox("P
在我的项目中,我有 256 个按钮,我创建了一个将它们全部添加到 QButtonGroup 的函数。 void MainWindow::AddBlocksToGroup() { QButton
我试图将注意力集中在 QButtonGroup 中的所有 QPushButton 上。我在按钮组中添加的所有按钮上安装 eventFilter 并捕获每个按钮上的 Tab 键按下事件并将焦点转移到下一
我正在尝试通过独占检查将一些 QPushButton 分组到 QButtonGroup 中,但在启动后我仍然能够检查多个按钮。 // pen toggle button penB.setSizePol
我试图弄清楚如何使用 QGroupBox 小部件代替 QButtonGroup 小部件作为 qt 文档(下面的链接)“强烈建议不要使用它”。 https://doc.qt.io/archives/qt
我在将 QButtonGroup 的信号连接到仿函数时遇到问题。 functionGroup = new QButtonGroup(); functionGroup->addButton( ui->p
我对这整个事情的运作方式感到很困惑。 我有一些按钮,我把它们放在这样的组中: MainWindow::MainWindow(QWidget *parent) : QMainWindow(par
我正在 Qt Creator 中开发一个图形用户界面项目 我如何将一组 40 个按钮设置为可检查,但一次只能检查一个?我稍微研究了一下 QButtonGroup 似乎很有趣,但我就是不明白。 :( 我
我有一组 3 QRadioButtons和 2 个可检查的 QGroupBoxes这需要相互排斥。我喜欢将单选按钮添加到 QButtonGroup 的便利性自动处理这个问题,但我似乎无法弄清楚如何将
例如,我有四个QRadioButtonrb1、rb2、rb3、rb4 。我设置了 rb1 和 rb3 选中: rb1->setChecked(true); rb3->setChecked(true);
在我的项目中,我有 40 个 QPushButton 都放在一个 QButtonGroup 中,如下所示: QButtonGroup* group = new QButtonGroup(this);
关闭。这个问题需要details or clarity .它目前不接受答案。 想改善这个问题吗?通过 editing this post 添加详细信息并澄清问题. 6年前关闭。 Improve thi
我想在 PyQt5 中更改按钮组对象的按钮颜色。我试过了 QButtonGroup.setStyleSheet(""" QButtonGro
我目前正在从在 Python 脚本中使用 Tk 切换到 PyQt 来运行一些简单的 GUI。它们的目的是提供稍后将与启动不同脚本后收集的一些数据一起保存在文件中的功能(我暂时省略了单独的 PushBu
from PySide import QtCore from PySide import QtGui class UI(QtGui.QDialog): def __init__(self):
我创建了一个 QMainWindow GUI,它使用单选按钮工具栏来选择主显示(即显示 QStackedWidget 的哪个小部件)。我终于检测到了 QButtonGroup 的信号,但我不完全明白为
我使用设计器来构建我的 GUI 并在 python 脚本中加载保存的 xml。我一直在使用 QGroupBox 来包含单选按钮,但更喜欢使用 QButtonGroup。问题是 QButtonGroup
我是一名优秀的程序员,十分优秀!