有没有办法从 Qt 中的另一个信号触发一个信号?

2024-02-03

我已经有了一个应用程序,现在正在对其进行调整。在这方面,我引入了一个新信号,当发出另一个信号时必须发出该信号。这在 Qt 中可能吗?

编写一个插槽只是为了发出这个信号感觉如此原始和蹩脚......

进一步详细说明,我必须将按钮 signalClicked() 连接到我自己的信号,例如 sendSignal(enumtype)...

编辑:忘记提及我需要用第二个信号发送数据。


是的,无需创建额外的插槽即可。只需将信号连接到信号即可:

connect(this,SIGNAL(someSignal()),this,SIGNAL(anotherSignal()));

文档中的更多信息。 http://doc.qt.io/qt-5/qobject.html#connect

Edit:

您可以像往常一样在连接中共享数据。肮脏的例子:

QWidget* obj = new QWidget;
obj->setWindowTitle("WindowTitle");
//share data, pass wrong data to the signal
QObject::connect(obj,SIGNAL(objectNameChanged(QString)),obj,SIGNAL(windowTitleChanged(QString)));
QObject::connect(obj,&QWidget::windowTitleChanged,[](QString str) {qDebug() << str;});
obj->setObjectName("ObjectName");
qDebug() << "But window title is"<< obj->windowTitle();
obj->show();

输出是:

"ObjectName" 
But window title is "WindowTitle" 

但没有办法做这样的事情:

connect(this,SIGNAL(someSignal()),this,SIGNAL(anotherSignal("with custom data")));

在这种情况下,您需要一个单独的插槽。

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

有没有办法从 Qt 中的另一个信号触发一个信号? 的相关文章

  • 如何使用 Qt DOM 通过此语法获取 xml 属性

    我正在使用 Qt DOM XML 解析器 并且遇到了如下属性定义的问题
  • 在 Qt 服务器上验证用户身份

    我正在尝试使用 C QtTcpSocket 为个人项目 多人国际象棋游戏 实现身份验证系统 我的朋友建议了一种验证用户的方法 但我想问是否有更简单或更好的方法 来自 Python 背景 做这个项目主要是为了加深对 C 的理解 我将发布我朋友
  • 用 C++/Qt 编写的程序中的 RTF / doc / docx 文本提取

    我正在写一些程序Qt https en wikipedia org wiki Qt 28software 29 C 我需要从中读取文本微软Word https en wikipedia org wiki Microsoft Word RTF
  • 在没有加载器的情况下实例化内联组件

    有没有办法实例化内联Component 即在同一文件中定义 而不使用Loader 我不太关心使用的性能影响Loader因为我要用很多东西污染我的文件Loader包装纸 我发现从 JavaScript 创建动态 QML 对象 http doc
  • 如何让小部件在上下文菜单出现时接收鼠标释放事件

    在Ubuntu20 04上 当上下文菜单出现时 我无法让小部件接收鼠标释放事件 而Windows可以接收 我的pyqt版本是5 15 2 我考虑过手动发送鼠标释放事件 但我不知道当上下文菜单出现时哪些系统会收到鼠标释放事件 这样做可能会导致
  • 使用 CMake 编译时更改头文件位置会导致缺少 vtable 错误

    对于一个大型 C 项目 我需要从 qmake 过渡到 CMake 但是在处理一个玩具示例时 我遇到了一些我不理解的行为 示例代码具有单个头文件 当该头文件移动到子目录中时 我收到 MainWindow 类缺少 vtable 的错误 CMak
  • 清除pyqt中布局中的所有小部件

    有没有办法清除 删除 布局中的所有小部件 self plot layout QtGui QGridLayout self plot layout setGeometry QtCore QRect 200 200 200 200 self r
  • Qt 嵌入式触摸屏 QMouseEvents 在收到 MouseButtonRelease 之前未收到

    我在带有触摸屏的小型 ARM 嵌入式 Linux 设备上使用 Qt 4 8 3 我的触摸屏配置了 tslib 并对其进行了校准 因此 etc 中有一个 pointcal 文件 我的触摸事件的位置工作得很好 但无论如何我都会在鼠标按下或鼠标释
  • Qt:不完整类型和前向声明的使用无效

    我有一些误解 A h ifndef A H define A H include B h class A public B Q OBJECT public A endif A cpp include A h A A B ui gt blan
  • 如何doxygen注释Qt属性?

    我想将 Doxygen 注释附加到我的 Q PROPERTY 例如 song h class Song public QObject Q OBJECT private Q PROPERTY QString title READ title
  • 如何在 Qt 应用程序中嵌入 Python 解释器?

    有没有一种简单的方法可以将 Python 解释器嵌入到 Qt 应用程序中 如果可能的话 我希望有一个跨平台的解决方案 这就是目的PythonQt http pythonqt sourceforge net 它支持 Windows Linux
  • Qt中用于线程间通信的类设计

    问题陈述 用相机跟踪物体并相应地移动相机的方位角和仰角 Process 相机获取物体的图像 处理相机的每一帧以查找物体 应该被跟踪 并将每帧中生成的信息传递给机械设备 万向节 以平移和倾斜方式移动摄像机 Design 主 Gui 在一个线程
  • 如何将自定义 Qt 类型与 QML 信号一起使用?

    我在 Qt 5 2 qml 应用程序中创建了一个自定义类型 class Setting public QObject Q OBJECT Q PROPERTY QString key READ key WRITE setKey Q PROPE
  • 连接到 QNetworkReply::error 信号

    我正在使用 Qt5 的新连接语法 QNetworkReply 有一个名为error http qt project org doc qt 5 0 qtnetwork qnetworkreply html error 2还有一个函数叫做err
  • 使用 QGraphicsScene 实现流畅的动画

    我希望我的问题并不总是同样的问题 我有一个 QGraphicsScene 它的项目是一些 QGraphicsPixmap 我用一个计时器来移动它们 每秒 SetX 10 我设置 10是因为窗口大100 使用这个解决方案我的动画不流畅 我想我
  • Qt(在 Windows 上)将权限级别设置为“requireAdministrator”

    我正在使用 Qt Creator 并努力制作 exe文件默认以管理员身份运行 在线阅读所有解决方案我试图将这一行放入我的 pro file QMAKE LFLAGS MANIFESTUAC level requireAdministrato
  • 通过单击内部小部件而不是标题栏来移动窗口

    在 Windows 中 当我创建 QMainWindow 时 我可以通过单击标题栏并拖动它来在屏幕上移动它 在我的应用程序中 我使用隐藏了标题栏setWindowFlags Qt CustomizeWindowHint 我正在尝试使用小部件
  • QObject 通用信号处理程序

    信号处理程序 是指插槽 而不是 POSIX 信号的处理程序 我需要 连接 可能不会 using QObject connect直接地 所有信号从 QObject 的 未知 子类的实例到一个单槽另一个 QObject 的 我需要这个才能通过网
  • 使 QLabel 的像素图透明

    我有一个带有 QLabel 和像素图的主窗口 我想让它透明 或不那么不透明 我正在使用下面的代码 ui gt label gt setAttribute Qt WA TranslucentBackground ui gt label gt
  • QML MouseArea 将事件传播到按钮

    我正在开发一个应用程序 其菜单类似于 Android 版 Gmail 收件箱应用程序菜单 基本上 当您按下按钮打开菜单时 它就会滑入视图 用户可以将其滑开或按菜单上的按钮 对于滑动我使用了代码SwipeArea from kovrov ht

随机推荐

  • 如何使用MinGW Windres编译资源文件?

    我的最终目标是设置使用 MinGW gcc g 编译的可执行文件的版本 在属性 gt 详细信息中显示 但现在我想用 Windres 编译一个资源文件 以便稍后能够手动链接它 但是当我使用此命令时出现以下错误 windres resource
  • 通过批处理文件(.bat)编译 Inno Setup 项目

    在我的工作项目中 我们必须使用 Inno Setup 创建 4 个安装程序 这样 我必须逐个文件运行 这最终会占用我更多的时间 文件 iss setup prog 01 iss setup prog 02 iss setup prog 03
  • 解析 HTTParty 响应

    我正在使用 HTTParty 提取 Facebook 用户的书籍列表 但在解析响应时遇到问题 Facebook 以这种方式返回数据 data name Title category Book id 21192118877902 create
  • Mac上像Cloud App一样自动截图上传

    云应用程序 http getcloudapp com 有这个巧妙的功能 当新的屏幕截图添加到桌面时 它会自动上传它们 有什么想法如何做到这一点吗 您可以自己做类似的事情 而无需太多编程方式 在操作系统中 您可以配置 文件夹操作 http w
  • Android自定义视图组委托addView

    我想实现自定义ViewGroup就我而言 源自FrameLayout但我希望从 xml 添加的所有子视图不直接添加到此视图中 而是添加到FrameLayout包含在这个习俗中ViewGroup 让我举个例子来说明这一点
  • 缺少必需的模块 Firebase - Jenkins 构建错误

    我已经配置了 jenkins 来构建我的 ios swift 应用程序 我用过 xcode 版本 8 1 和 swift 版本 3 我是 Jenkins 的新手 并继续集成过程 根据我的控制台输出 我认为构建成功 因为控制台输出像这样打印
  • java.lang.UnsupportedOperationException:AdapterView 中不支持 addView(View, LayoutParams)

    我正在使用网上找到的 Expandable ListView 示例 活动 public class ExpandableListViewActivity extends ExpandableListActivity strings for
  • utf8mb4_unicode_ci 与 utf8mb4_bin

    首先让我们看看我是否做对了 字符集是一组符号和编码 排序规则是用于比较字符集中字符的一组规则 我应该使用 utf8mb4 因为 mysql utf8 是一种欺诈 最多 3 字节 而不是 PHP 中真正的最多 4 字节真正的 utf8 字符集
  • 打字稿和传播运算符?

    function foo x number y number z number console log x y z var args number 0 1 2 foo args 为什么我在 Typescript Playground 中收到
  • 多个 Activemq 远程代理的 Spring 配置

    如何在spring上下文中配置多个远程activemq代理 不同的IP地址 以下是 1 个远程代理的配置 我正在使用camel来创建路由 用于在多个远程代理中的不同队列中生成和使用消息 根据以下路由 系统如何知道每个队列属于哪个远程代理 项
  • 没有为命名空间 / 和操作名称 hello 映射的操作

    package com tutorialspoint struts2 public class HelloWorldAction private String name public String execute throws Except
  • 如何在asp.net core 1.0中获取当前的url

    在以前版本的 ASP NET 中 我们可以使用 Request Url AbsoluteUri 但似乎已经改变了 我们如何在 ASP NET Core 1 0 中做到这一点 您必须分别获取主机和路径 Context Request Host
  • 画一棵二叉树

    我正在寻找一个js库 它允许用户绘制二叉树 添加 删除叶子 添加 删除父节点等 我发现了很多库 但其中大多数仅用于数据可视化 例如 d3 而不是从浏览器中绘制 这真的存在吗 Thanks 看看现有的绘制图表的东西 树就是图 纯 JavaSc
  • 使用 jQuery 将具有相对路径的外部 HTML 页面加载到 DIV 中

    我对 jQuery 比较陌生 如果这个问题太简单 请原谅 但我已经搜索了许多线程几个小时 但找不到明确的解决方案 我有以下文件夹结构 index html html pages page1 html html pages images ht
  • 在 Postgres 中使用 DELETE 的返回值进行 UPDATE

    我需要使用从另一个表中删除的值来更新表 情况是类似于SO 上的评论投票记分员 我正在使用 python 来处理 postgres 但这应该没有什么区别 query UPDATE comment SET score score DELETE
  • persistence.xml 中 jpa 的 C3p0 连接池不起作用?

    在尝试按照我能找到的所有示例配置 c3p0 后 我仍然遇到 JDBC 超时问题 我正在使用 JPA Hibernate Tomcat MySQL AWS RDS 这是 persistence xml 的片段
  • 需要 Django 表单集

    如何使 django formset 中的所有表单都成为必需的 我试图验证所有字段的存在cleaned data重写 formset 的 clean 方法 但它只是默默地失败 没有显示任何错误 Thanks 源代码 class BaseSc
  • 检查我的系统中是否安装了 Python 软件包?

    如何检查我的系统中是否安装了某些软件包 我的系统是Linux 但如果它能在其他操作系统上运行就更好了 我的意思是操作系统特定的软件包 例如可能是 rpm 或 deb 有没有 python 模块或脚本可以做到这一点 要查明您是否安装了 deb
  • 如何在不单击按钮的情况下将两个值相乘 - javascript

    这是我的小提琴 http jsfiddle net YFgkB 6 http jsfiddle net YFgkB 6
  • 有没有办法从 Qt 中的另一个信号触发一个信号?

    我已经有了一个应用程序 现在正在对其进行调整 在这方面 我引入了一个新信号 当发出另一个信号时必须发出该信号 这在 Qt 中可能吗 编写一个插槽只是为了发出这个信号感觉如此原始和蹩脚 进一步详细说明 我必须将按钮 signalClicked