QT信槽编程,QObject::connect: Cannot connect (null)报错的两种成因

2023-11-14

{	
	connect(
		ui.btnHelp, SIGNAL(clicked()), this, SLOT(OnBtnHelp())
		);
	connect(
		ui.btnHelp, SIGNAL(toggled(bool)), this, SLOT(OnBtnHelpChanged(bool))
		);
	ui.setupUi(this);
}

上面这段代码报错如下:

QObject::connect: Cannot connect (null)::clicked() to Test5_4::OnBtnHelp()
QObject::connect: Cannot connect (null)::toggled(bool) to Test5_4::OnBtnHelpChanged(bool)
这是ui没有被提前初始化的原因,把最后一段代码前置就可以了,原因是:(quote自http://blog.csdn.net/oowgsoo/article/details/1529411#comments)

即编译器未能识别到信号发送者,sender为零时,报错NULL。

 // 不允许空输入
    if (sender == 0 || receiver == 0 || signal == 0 || method == 0) {
#ifndef QT_NO_DEBUG
        qWarning("Object::connect: Cannot connect %s::%s to %s::%s",
                 sender ? sender->metaObject()->className() : "(null)",
                 signal ? signal+1 : "(null)",
                 receiver ? receiver->metaObject()->className() : "(null)",
                 method ? method+1 : "(null)");
#endif
        return false;
    }
发送和接收者定义重叠,也会保类似错误,详见:

http://stackoverflow.com/questions/8493506/qobjectconnect-cannot-connect-null



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

QT信槽编程,QObject::connect: Cannot connect (null)报错的两种成因 的相关文章

  • 是否可以在切换 QTreeWidgetItem 复选框时创建信号?

    我使用下面的代码创建了一个也是 QTreeWidgetItem 的复选框 Populate list QTreeWidgetItem program createCheckedTreeItem QString fromStdString i
  • Qt Designer 与手动编码

    每次我使用图形工具包开始一个项目时 第一个冲突就会发生在如何处理视觉设计和小部件布局的决定上 图形工具还是手动编码 这是一个非常棘手 主观的问题 因为大多数人会根据个人喜好来决定 它还很大程度上取决于图形工具的质量 在这种情况下 我想只关注
  • 无法隐藏 QMenu 对象 QMenu::setVisible()?

    我已经建立了一个QMenu MainMenu在我的上面MainWindow在我的应用程序中 大家都习惯了 我有以下QMenu主菜单 文件 编辑 SuperHeavyExpertMenus 设置 帮助 我想隐藏子树SuperHeaverExp
  • 无法初始化静态QList?

    我收到以下错误 Cube cpp 10 error expected initializer before lt lt token 以下是头文件的重要部分 ifndef CUBE H define CUBE H include
  • 将信号/槽(QObject)添加到 QGraphicsItem:性能受到影响?

    我想将信号 槽添加到 QGraphicsItem 以便我可以从另一个线程访问 QGraphicsItemObjects 我知道有两个选项 使用 QGraphicsObject 或从 QObject 和 QGraphicsItem 继承 使用
  • 关于 GUI 计时器显示后台线程已用时间的建议?

    Issue 我有一个 PyQt GUI 用户按下按钮即可启动后台线程 workerThread 它是从QThread 我想要一个计时器显示 以QLabel 显示自此以来已经过去了多少时间workerThread开始 我希望这个计时器在wor
  • 异步设计中如何知道哪个QNetworkReply属于QNetworkRequest?

    我可以轻松地用 C 进行异步设计 HttpResponseMessage response await httpClient GetAsync InputAddress Text run when request finished And
  • 删除 QComboBox“下拉”动画

    我正在使用 Qt 4 8 并且想在单击 QComboBox 时摆脱 下拉 动画 我也想稍微移动一下 到目前为止 我一直在考虑重新实现 showPopup 和 hidePopup 但不知道如何使其工作 此外 每次我尝试使用 CSS 进行移动或
  • 对齐坐标系

    Let s say I have 2 coordinate systems as it is shown in image attached 如何对齐这个坐标系 我知道我需要将第二个坐标系围绕 X 平移 180 度 然后将其平移到第一个坐标
  • QToolBar 的菜单延迟

    我通过制作 QAction 并向其添加 QMenu 在 QToolBar 上有一个菜单 如何消除单击图标时出现菜单之前的延迟 QToolBar myToolBar new QToolBar this QAction myAction new
  • 安装多个版本的 Qt 库

    我在windows中安装了QtSDK 它的Qt库版本是4 7 0 现在我想为 mingw 和 VS2008 安装 Qt 库版本 4 8 2 我怎样才能做到这一点 如何向QtCreator引入多个版本 注意 我已经从以下位置下载了库http
  • 如何获取 QIcon 的文件/资源​​路径

    假设我做了这样的事情 QIcon myIcon resources icon ico 我稍后如何确定该图标的路径 例如 QString path myIcon getPath 问题是 没有getPath 会员 我找不到类似的东西 但肯定有办
  • QLineEdit:显示处理后的文本,而不是输入的文本,但保留它(自定义回显模式)

    我想要一个QLineEdit不显示输入的文本 而是显示经过处理的版本 同时保留原始文本并在通过请求时返回它text 就像密码回显模式一样 但我不希望每个字符都被屏蔽 我想虚拟化空间 例如什么时候some text with spaces i
  • MAC 上的 QT/C++ - 未设置应用程序图标

    我正在努力解决的奇怪问题 在与我的 pro QT 项目文件相同的文件夹中 我有一个 Resources myIcon png 我试图将其设置为我构建的应用程序的图标 在 OSX 上运行 我阅读了文档 它建议在 pro 文件中添加 ICON
  • QSpinBox 输入 NaN 作为有效值

    我正在尝试扩展 QSpinBox 以能够输入 NaN 或 nan 作为有效值 根据文档 我应该使用 textFromValue valueFromText 和 validate 函数来完成此操作 但我无法让它工作 因为它仍然不允许我输入除数
  • 如何在 C++ 和 QML 应用程序中使用 qrc?

    我在 Windows7 上用 c qnd Qt Creator QML 编写了 Qt Quick Desktop 应用程序 现在 我必须部署它 并且我需要隐藏 qml 文件和图像 意味着 将它们放入资源等中 我读到有一个很好的方法可以使用
  • Qt mouseReleaseEvent() 未触发?

    我有一个显示图片的库 我们称之为 PictureGLWidget 其中 class PictureGLWidget public QGLWidget 所以 PictureGLWidget 扩展了 QGLWidget 在PictureGlWi
  • QTcpSocket 有时不发送数据

    我有两个 QT 应用程序 一个应用程序可以被认为保存了大数据 它每秒向第二个应用程序发送大约 10 KB 的数据块 之前我尝试使用QUdpSocket来传输数据 但由于MTU限制在2 5K左右 并且需要自己分割和重新组合数据 所以我改用QT
  • PyQt:如何设置组合框项目可检查?

    为了将 GUI 小部件数量保持在最低限度 我需要找到一种方法来为用户提供下拉菜单项的选择 这些菜单项可用于过滤掉 listWidget 项中显示的内容 假设 listWidget 列出了 5 个不同类别的项目 Cat A Cat B Cat
  • 如何在带有预编译头的项目中使用google protobuf

    我有一个包含多个项目的解决方案 我的项目 但不是全部 使用预编译头 我决定使用 protobuf 但遇到了一个问题 在 protoc exe 从 proto 生成 pb h 后 我尝试包含标头并收到错误 预编译标头未包含在 pb h 中 我

随机推荐

  • HJ33 整数与IP地址间的转换

    Powered by NEFU AB IN Link 文章目录 HJ33 整数与IP地址间的转换 题意 思路 代码 HJ33 整数与IP地址间的转换 题意 原理 ip地址的每段可以看成是一个0 255的整数 把每段拆分成一个二进制形式组合起
  • JAVA:@Builder注解深层特性(笔记)

    JAVA 记录 Builder的特性 Builder原理 在构造方法A上引用时 相当于建造一个构造器G 构造器G只可以构造A方法参数列表里的字段 在类上引用时 相当于给这个类一个全参构造方法 然后给这个全参构造方法加上 Builder注解
  • Docker Compose 配置文件 docker-compose.yml 详解

    Docker Compose配置文件是Docker Compose的核心 用于定义服务 网络和数据卷 格式为YAML 默认路径为 docker compose yml 可以使用 yml或 yaml扩展名 目前Compose配置文件格式的最新
  • Conformal lec learning7: abort points

    在conformal lec 检查等价性的过程中 遇到abort points 是比较头疼的 可以通过以下方式避免
  • 使用split.js库实现网页布局分割

    前言 在开发网页应用程序时 经常需要将页面的布局分割成多个区域 使得用户可以同时查看不同的内容 split js是一个简单易用的JavaScript库 可以帮助我们实现灵活的网页布局分割 以及可拖动和调整大小的分割器 引入split js库
  • Java与Scala的转换

    一 java Map 转为 scala collection immutable Map public static
  • PyQt5,PyQt-tools安装与Qt designer,pyuic,qrcToPy的配置

    一 PyQt5 PyQt tools的安装 PyQt5的安装 可以在pycharm里安装PyQt5 PyQt tools和PyQt Designer库 或者在命令行里用pip命令安装 安装完成测试一下 from PyQt5 Qt impor
  • 坚持了139天,剪辑视频拿到12w,手把手教会你如何去操作

    如果你能熬得了夜 吃得了苦 大家也可以来跟我一起做视频剪辑 把我的方法拿去认真操作 相信你也可以做到 也想要通过做自媒体赚取一份收入 却没有方向的小伙伴们可以给大周点赞并扣 8 大周会把整理好的新手指南分享给你们 接下来就分享具体的操作方法
  • sql查看和更新某个表的某个字段

    学了一点sql新知识 给某个表的某个字段添加一个新的值 查看表里某个字段的值 SELECT FROM TableFields WHERE TableFieldID 表名 字段名 更新字段的存储 UPDATE TableFields SET
  • upf+vcs仿真

    要做upf vcs的联合仿真的话 首先需要写好upf文件 其中有两个方面 1 需要修改makefile 1 tb文件改为 sv模式 2 在makefile中注意修改了 sv需要在加上 sverilog 3 加上 vcs upf lt 路径
  • FIND_IN_SET

    FIND IN SET str strlist str 要查询的字符串 strlist 字段名 参数以 分隔 如 1 2 6 8 查询字段 strlist 中包含 str 的结果 返回结果为null或记录 假如字符串str在由N个子链组成的
  • 【NLP】3 种强大的长文本摘要方法和实例

    大家好 我是Sonhhxg 柒 希望你看完之后 能对你有所帮助 不足请指正 共同学习交流 个人主页 Sonhhxg 柒的博客 CSDN博客 欢迎各位 点赞 收藏 留言 系列专栏 机器学习 ML 自然语言处理 NLP 深度学习 DL fore
  • Python 全栈系列220 Tornado的服务搭建

    说明 想法变的真快 本来是没打算用Tornado的 主要是想节约时间 但是现在看来不用还是不行 目前用gevent flask部署的时候 启动多核的worker似乎存在问题 另外 有很多内部基础的数据服务 其实并不需要flask的各种组件
  • stata解决内生性问题--样本选择

    目录 简单介绍 1 内生性 2 为什么要解决内生性问题 3 内生性问题产生的原因 4 例子 代码 简洁版 代码 详细分析版 结果 简单介绍 1 内生性 x与误差项有相关关系 2 为什么要解决内生性问题 内生性会破坏参数估计的 一致性 参数估
  • 沁恒ch32V208处理器开发(四)串口通信

    目录 串口资源 资源配置 同步模式 单线半双工模式 中断 DMA 串口的初始化 串口通信的实现 串口资源 资源配置 CH32V208 系列 是基于 RISC V 指令架构设计的 32 位 RISC 内核 MCU 根据封装的不同 可用的USA
  • 永磁同步电机的矢量控制策略(十四)一一一位置环的仿真

    14 永磁同步电机的矢量控制策略 十四 14 1 永磁同步电机的三闭环矢量控制 之前的博客文章中所述的双闭环矢量控制系统 电流环属于内环 其作用是使电机电流跟随给定电流 速度环输出 的变化 对系统响应的快速性与准确性有着重要影响 转速环属于
  • git提交代码报 vue-cli-service lint found some errors. Please fix them and try committing again

    原因 问过度娘在提交代码的时候 它会在提交代码前运行做代码风格检查 如果代码不符合相应规则 则报错 解决 直接把pre commit文件删除 进入项目 git文件夹 hooks 删除 如何你的项目文件夹下没有找到 git文件夹 检查一下看看
  • java sheet 设置名称_Java 实现 给Excel模板赋值(直接打开表格赋值或者用自定义了名称的单元格(一块区域)赋值)...

    1 需求 直接打开表格填充数据到模板后的效果可能出现表格重叠的问题 用自定义名称填充数据到模板后表格互不影响 Excel自身有一个 定义名称 的功能 1 可以给任意的单元格定义一个名称 比如定义某个单元格的名称为 testA1 如何给这个名
  • IO复用进化史

    IO复用的历史和多进程一样长 Linux很早就提供了select系统调用 可以在一个进程内维护1024个连接 后来加入poll系统调用 poll做了一系列改进后解决了1024个连接的限制问题 可以维持任意数量的连接 但是select和pol
  • QT信槽编程,QObject::connect: Cannot connect (null)报错的两种成因

    connect ui btnHelp SIGNAL clicked this SLOT OnBtnHelp connect ui btnHelp SIGNAL toggled bool this SLOT OnBtnHelpChanged