- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在尝试通过独占检查将一些 QPushButton 分组到 QButtonGroup 中,但在启动后我仍然能够检查多个按钮。
// pen toggle button
penB.setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Minimum);
penB.setIconSize(QSize(ICON_SIZE,ICON_SIZE));
penB.setCheckable(true);
penB.toggle();
penB.setIcon(QIcon(":icons/pen.png"));
// circle toggle button
circleB.setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Minimum);
circleB.setIconSize(QSize(ICON_SIZE,ICON_SIZE));
circleB.setCheckable(true);
circleB.setIcon(QIcon(":icons/circle.png"));
figureBox.addButton(&penB);
figureBox.addButton(&circleB);
figureBox.setExclusive(true);
// add buttons to grid
layoutG.addWidget(&openB,1,1);
layoutG.addWidget(&saveB,1,2);
layoutG.addWidget(&penB,1,3);
layoutG.addWidget(&circleB,2,3);
我认为,它只是需要处理一些事件。如果是真的,具体是哪些事件?提前致谢。
最佳答案
我已经尝试复制您的示例并且对我来说它工作正常:
widget.h:
#ifndef WIDGET_H
#define WIDGET_H
#include <QWidget>
#include <QPushButton>
#include <QButtonGroup>
#include <QGridLayout>
class Widget : public QWidget
{
Q_OBJECT
public:
explicit Widget(QWidget *parent = 0);
~Widget();
private:
QGridLayout layoutG;
QButtonGroup figureBox;
QPushButton openB;
QPushButton saveB;
QPushButton penB;
QPushButton circleB;
};
#endif // WIDGET_H
小部件.cpp:
#include "widget.h"
Widget::Widget(QWidget *parent) :
QWidget(parent)
{
// pen toggle button
penB.setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Minimum);
penB.setIconSize(QSize(16, 16));
penB.setCheckable(true);
penB.toggle();
// circle toggle button
circleB.setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Minimum);
circleB.setIconSize(QSize(16, 16));
circleB.setCheckable(true);
figureBox.addButton(&penB);
figureBox.addButton(&circleB);
figureBox.setExclusive(true);
// add buttons to grid
layoutG.addWidget(&openB,1,1);
layoutG.addWidget(&saveB,1,2);
layoutG.addWidget(&penB,1,3);
layoutG.addWidget(&circleB,2,3);
setLayout(&layoutG);
}
Widget::~Widget()
{
}
您的代码中唯一可能有问题的地方是我看不到您在哪里设置布局,但也许您出于简单原因没有添加代码。另一件事是,唯一排除的按钮是 penB
和 circleB
。
检查我的示例,看看您做错了什么,也许会回来提供反馈。
关于c++ - QButtonGroup setExclusive() 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27005346/
我正在编写一个基于 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
我是一名优秀的程序员,十分优秀!