(Qt) 从按钮的 QButtonGroup 创建信号?

2023-12-06

我对这整件事是如何运作的感到非常困惑。

我有一些按钮,我将其放入这样的组中:

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);
    AddSlotsToGroup();
}

void MainWindow::AddSlotsToGroup()
{
    QButtonGroup* group = new QButtonGroup(this);
    group->addButton(ui->slot_0);
    group->addButton(ui->slot_1);
    //...
}

我想创建一个插槽来获取该组中单击的按钮的 id。 (抱歉,如果我解释得不好:()

这就是我所做的(谷歌搜索后纯粹猜测)

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);
    AddSlotsToGroup();
    connect(QPushButton* group, SIGNAL(buttonClicked(int)), this, SLOT(onGroupButtonClicked(int)));
}

void MainWindow::onGroupButtonClicked(int id)
{
    qDebug() << id;
}

毫不奇怪,我收到一条错误消息,指出 group 是未声明的标识符,并且 QPushButton 是非法使用等。

我不想说我只使用了设计器窗口中的信号/槽,所以我真的只需要这一件事,然后我就为未来做好了准备。 :)

谢谢你的时间。 :)


请尝试以下操作:

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);
    AddSlotsToGroup();
}

void MainWindow::AddSlotsToGroup()
{
    QButtonGroup* group = new QButtonGroup(this);
    group->addButton(ui->slot_0);
    group->addButton(ui->slot_1);
    //...
    connect(group, SIGNAL(buttonClicked(int)),
            this, SLOT(onGroupButtonClicked(int)));
}

顺便说一下,你需要先学习C++才能掌握Qt。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

(Qt) 从按钮的 QButtonGroup 创建信号? 的相关文章

  • 我可以使用反射更改 C# 中的私有只读字段吗?

    我想知道 由于很多事情都可以使用反射完成 我可以在构造函数完成执行后更改私有只读字段吗 注 只是好奇 public class Foo private readonly int bar public Foo int num bar num
  • 如何调试参数化 SQL 查询

    我使用 C 连接到数据库 然后使用 Ad hoc SQL 来获取数据 这个简单的 SQL 查询非常方便调试 因为我可以记录 SQL 查询字符串 如果我使用参数化 SQL 查询命令 有没有办法记录 sql 查询字符串以进行调试 我想就是这样的
  • 使用 C# 使用应用程序密码登录 Office 365 SMTP

    在我们的 Office 365 公司帐户中实施两步身份验证之前 我的 C WPF 程序已成功进行身份验证并发送邮件 我使用了 SmtpClient 库 但现在我必须找到另一个解决方案 因为它不再起作用 我找不到任何使用 O365 应用程序密
  • 浮点提升:stroustrup vs 编译器 - 谁是对的?

    在 Stroustrup 的新书 C 编程语言 第四版 第 10 5 1 节中 他说 在执行算术运算之前 整数提升用于从较短的整数类型创建整数 类似地 浮点提升是用于从浮点数创建双精度数 我用以下代码确认了第一个声明 include
  • 字节到二进制字符串 C# - 显示所有 8 位数字

    我想在文本框中显示一个字节 现在我正在使用 Convert ToString MyVeryOwnByte 2 但是 当字节开头有 0 时 这些 0 就会被删除 例子 MyVeryOwnByte 00001110 Texbox shows g
  • 控制台应用程序 .net Core 2.0 的配置

    在 net Core 1 中我们可以这样做 IConfiguration config new ConfigurationBuilder AddJsonFile appsettings json true true Build 这样就可以使
  • glDrawElements 只绘制半个四边形

    这是我的功能 void Object draw2 if mIsInitialised return Tell OpenGL about our vertex and normal data glEnableClientState GL VE
  • 如何检测斑点并将其裁剪成 png 文件?

    我一直在开发一个网络应用程序 我陷入了一个有问题的问题 我会尝试解释我想要做什么 在这里您看到第一个大图像 其中有绿色形状 我想要做的是将这些形状裁剪成不同的 png 文件 并使它们的背景透明 就像大图像下面的示例裁剪图像一样 第一张图像将
  • CMake - 将预构建库链接到 C# 项目

    我正在使用 CMake 构建 C 库 该库依赖于已构建的库 dll 我似乎无法让图书馆链接到我的图书馆 我尝试过使用target link libraries mylib external lib 我也尝试过暴力破解 reference e
  • 当格式字符串包含“{”时,String.Format 异常

    我正在使用 VSTS 2008 C Net 2 0 执行以下语句时 String Format 语句抛出 FormatException 有什么想法是错误的吗 这是获取我正在使用的 template html 的位置 我想在 templat
  • 使用 Linq 进行异步Where过滤

    我有一个List通过填充的元素async调用 WebService 没问题 我需要过滤该列表以便在应用程序视图上显示某些内容 我试过这个 List
  • 为什么 C 函数不能返回数组类型?

    我是 C 语言新手 想知道 为什么 C 函数不能返回数组类型 我知道数组名是数组第一个值的地址 而数组是 C 中的二等公民 您自己已经回答了这个问题 数组是二等公民 C 按值返回 数组不能按值传递 因此不能返回它们 至于为什么数组不能按值传
  • 编写专门用于类及其子类的函数模板

    我正在尝试编写一个函数模板 一个版本应该用于不满足另一版本标准的所有类型 当参数是给定类的基类或该类本身时 应使用另一个版本 我尝试过超载Base 但是当类派生自Base 他们使用通用的 而不是特定的 我也尝试过这种 SFINAE 方法 s
  • 用 C# 编写的带有点击移动的 WPF 游戏

    我试图将标签网格移动到鼠标的位置 就像冒险游戏中的移动一样 理想情况下 我会在途中删除并重新绘制它们 但是 现在我只想弄清楚如何将 int 转换为厚度或 pointtoscreen 到目前为止我有 player XMove int Mous
  • 改进C++逐行读取文件的能力?

    我正在解析大约 500GB 的日志文件 我的 C 版本需要 3 5 分钟 我的 Go 版本需要 1 2 分钟 我正在使用 C 的流来流式传输文件的每一行以进行解析 include
  • SSBO 是更大的 UBO?

    我目前正在 OpenGL 4 3 中使用 UBO 进行渲染 以将所有常量数据存储在 GPU 上 诸如材料描述 矩阵等内容 它可以工作 但是 UBO 的小尺寸 我的实现为 64kB 迫使我多次切换缓冲区 减慢渲染速度 我正在寻找类似的方法来存
  • 在 unix 中编译 dhrystone 时出错

    我是使用基准测试和 makefile 的新手 我已经从下面的链接下载了 Dhrystone 基准测试 我正在尝试编译它 但我遇到了奇怪的错误 我尝试解决它 但没有成功 有人可以帮助我运行 dhrystone 基准测试吗 以下是我尝试编译的两
  • 多个同名内存数据库

    关系到这个答案 https stackoverflow com a 48446491 596758 我试图通过设置让多个上下文工作UseInMemoryDatabase以同名 下面的测试失败 第二个上下文为空 我还需要做什么才能在内存数据库
  • 有没有办法让 VS2010 在我的方法中扩展或收缩 try 块?

    我的代码有很多 try catch finally 块 与我在 VS2010 中的方法不同 除了添加区域之外 我无法在开发时扩展或收缩这些区域来隐藏内容 try vm R vm Qu vm T vm D vm Fil vm Type vm
  • 局部静态变量初始化是线程安全的[重复]

    这个问题在这里已经有答案了 假设我有一个包含三个静态函数的类 如下所示 include

随机推荐

  • 在宏运行结束时打开 NUMLOCK

    什么代码的作用 我有一个代码可以在屏幕上移动鼠标 打印屏幕并将其粘贴到 Excel 中 Problem 由于某种原因 我的代码总是 绝对没有例外 在每次运行后关闭 NUMLOCK 键 到目前为止我尝试过的 我四处搜寻 发现了 SendKey
  • 查询为空 PHP 错误

    我正在尝试使用 MySQL 构建一个购物车 当我运行此代码时 我不断收到此错误 查询为空 请帮助我尝试了几种方法 例如将变量放入字符串中而不是连接它
  • HTML 链接不会转到外部网站

    我在构建网站时一直使用react js运行本地主机网站 当我尝试链接到外部网站 例如youtube 时 它最终会转到如下链接 http localhost 3000 www youtube com 当我试图去时 https www yout
  • 我可以立即打印循环中的每次迭代吗?

    我的部署服务器为每个新的数据库构建运行一个部署脚本 部分脚本会阻塞以等待另一个异步操作完成 阻塞代码如下所示 DECLARE i INT 0 DECLARE laststatus NVARCHAR MAX N WHILE i lt 5 BE
  • cusparse csrsv_analysis 的性能非常慢

    我编写了一个带有 LU 预处理的共轭梯度求解器 用于线性方程组 我使用了 Maxim Naumov 博士的papers以nvidia的研究社区为指导 残差更新步骤需要先求解下三角矩阵系统 然后求解上三角矩阵系统 分为两个阶段 分析阶段 利用
  • 选择工资高于其部门平均水平的每位员工

    我只有 1 个名为EMPLOYEE在我的数据库中包含以下 3 列 Employee Name Employee Salary Department ID 现在我必须选择每个工资高于其部门平均水平的员工 我怎么做 我遇到的主要问题是 当将每个
  • 错误:只能在初始化程序中访问静态成员,这是什么意思?

    我有这样的东西 我很难理解这个错误 为什么访问filterController这里给出这个错误 但是如果我移动当前的整个内容 它不会给出这个错误TextFormField在构建方法中创建 在注释 A 和 B 之间 整个搬家如何TextFor
  • 从 MVC 的 DependencyResolver 转换到 AutofacWebApiDependencyResolver - .Current 在哪里?

    我让 AutoFac 与 MVC4 一起正常工作 我正在尝试过渡到 Web API 2 以下是我设置 AutoFac 的方法 public class AutofacRegistrations public static void Regi
  • Python 2.5 上选择模块的问题

    我有一个 Python 2 5 中的应用程序 用于监听 beanstalk 队列 到目前为止 除了我新买的 MacBook Pro 之外 它在我测试过的所有机器上都运行良好 在那台计算机上 当我尝试运行它时 出现以下错误 Traceback
  • 如何从使用 LINQ to SQL 的方法返回查询结果

    这是我正在使用的代码 我对 LINQ 还是有点陌生 所以这是一项正在进行的工作 具体来说 我想从此查询中获取结果 大约 7 列字符串 整数和日期时间 并将它们返回到调用包含此 LINQ to SQL 查询的方法的方法 一个简单的代码示例将非
  • 使用 QuickBooks Online (QBO) Intuit 合作伙伴平台 (IPP) DevKit 查询具有未结余额的所有发票

    我正在尝试使用 IPP 查询所有具有未结余额的发票 但我不断收到 0 个结果 我在代码中做错了什么吗 这是我尝试使用应用的过滤执行的 C 代码片段 InvoiceQuery qboInvoiceQuery new InvoiceQuery
  • R:UseMethod(“tbl_vars”)中的错误

    所以我在 R Studio 中运行下面的代码并收到此错误 UseMethod tbl vars 中的错误 tbl vars 没有适用的方法 应用于 字符 类的对象 我不知道如何修复它 因为没有 tbl vars 函数 有人可以帮忙吗 for
  • 由于 MIME 类型不匹配而阻止资源(X-Content-Type-Options:nosniff)

    我正在使用 JavaScript 和 HTML 开发网页 一切正常 当我从 HTML 页面收到以下错误列表时 这很好 The resource from https raw githubusercontent com dataarts da
  • 运行 endpointscfg.py get_swagger_spec 时出错

    我正在尝试按照本指南使用 Google Cloud Endpoints 构建一个项目 App Engine 上的云端点框架快速入门 我陷入了生成 OpenAPI 配置文件的步骤 需要运行以下命令 尝试一 lib endpoints endp
  • 为什么armeabi-v7a与另一个模块的armeabi冲突?

    我的项目中有 2 个模块 模块 1 libs armeabi 模块 2 libs armeabi libs armeabi v7a 为了成功运行该应用程序 我必须删除armeabi v7a完全文件夹 否则 so库位于Module 1 arm
  • MySQL - 时间戳之间的平均差异,不包括周末和非工作时间

    我正在寻找能够平均时间戳之间差异的能力 排除周末和排除非工作时间 仅在 08 00 00 17 00 00 之间 我试图仅使用查询来实现此功能 但如果无法使用 MySQL 则可以回退到 PHP 函数 下面是我当前用来获取平均时间戳差异的函数
  • Delphi 中的 Jabber 有完整的库吗?

    我正在寻找 Delphi 的 Jabber 库 我可以看到一些基于 COM 的 jabber 组件 但我正在寻找一个真正的 VCL 库 有人认识一个吗 您可以将 Exodus 的基础代码编译为 VCL 该代码称为 JOPL 可以在以下位置找
  • 为捕获过滤器添加音频功能

    我正在尝试向捕获源过滤器添加音频功能 以便制作带有音频的虚拟摄像机 开始于TMH s and rdp的代码我用另一个引脚扩展了它 称为 音频 CUnknown WINAPI CVCam CreateInstance LPUNKNOWN lp
  • Python:“del my_list”与“del[my_list]”

    我用 Python 创建了一个列表 gt gt gt my list 1 2 3 4 现在 如果我想删除列表 我想使用del类似运算符 gt gt gt del my list 这工作得很好 并且可能是使用它的一般方法 但在某个地方我偶然发
  • (Qt) 从按钮的 QButtonGroup 创建信号?

    我对这整件事是如何运作的感到非常困惑 我有一些按钮 我将其放入这样的组中 MainWindow MainWindow QWidget parent QMainWindow parent ui new Ui MainWindow ui gt