qt如何向子窗口发送send/post自定义事件

barryzhanghu 2020-02-28 05:29:54
最近需要更改一个GUI,原eventfilter安装在mainwindow中ui->boardView 下监听左右键,但是我需要将监听的事件替换为自定义事件 (当某个变量超过阈值)。但是在main.cpp中我需要手动send事件,但是只能send给mainwindow w, 而不能到ui->boardView,事件监测器也无法监听事件。相关代码可见于https://stackoverflow.com/questions/60424216/how-to-use-eventfilter-under-child-widget-to-catch-self-define-event 或知乎https://www.zhihu.com/question/375221137
...全文
710 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
barryzhanghu 2020-03-05
  • 打赏
  • 举报
回复
怎么做呢?return吗?
非弋 2020-03-05
  • 打赏
  • 举报
回复
引用 5 楼 barryzhanghu 的回复:
怎么做呢?return吗?
就是return啊,你试一下就知道了
非弋 2020-02-29
  • 打赏
  • 举报
回复
引用 2 楼 barryzhanghu 的回复:
问题是ui 定义在mainwindow内,一旦我在main.cpp中修改为QCoreApplication::postEvent(ui->boardView, .....), 编译的时候就报错 ui:used of undeclared identifier, 有什么办法可以解决呢?
如果只是简单的解决这个编译报错,你可以在MainWindow中写一个方法将ui->boardView对象抛出来
donwmufromdying 2020-02-29
  • 打赏
  • 举报
回复
你估计没有真正了解event机制。一个对象要能接收并处理event首先要继承自QObject,其次要自己实现event(),第三:该对象要启动eventloop.一般有eventloop的类基本上都有这么一个函数启动eventloop:exec()
非弋 2020-02-28
  • 打赏
  • 举报
回复
5:29发的帖子 void QCoreApplication::postEvent(QObject *receiver, QEvent *event, int priority) 第一个参数是接收者的对象 修改为QCoreApplication::postEvent(ui->boardView, .....),ui->boardView窗口才可以接收到事件
barryzhanghu 2020-02-28
  • 打赏
  • 举报
回复
问题是ui 定义在mainwindow内,一旦我在main.cpp中修改为QCoreApplication::postEvent(ui->boardView, .....), 编译的时候就报错 ui:used of undeclared identifier, 有什么办法可以解决呢?
这是一套基于深度学习的智能对话框架,其核心价值在于通过类人交流机制,实现人机间的高效语音互动。系统采用语音作为主要输入输出媒介,涵盖语音辨识、语义理解、对话策略管理及语言生成等多个关键技术环节。该框架通过分析用户语音中的语言模式和上下文,运用大型语言模型实现对用户意图的精准把握与反馈。系统具备实时交互能力,通过优化处理流程与降低响应时延,确保对话过程流畅且无感知停顿。 本项目的显著特性在于支持离线自托管部署模式,用户可在个人硬件设备上独立运行,无需依赖云服务,此举显著提升了数据安全性和隐私保护,并允许在无网络环境下持续工作。系统采用高度模块化的架构,便于功能组件的独立维护、升级或替换,降低了对整体系统进行重构的需求。作为一项开源计划,该项目欢迎全球开发者与研究者参与协作,通过代码贡献与优化建议,共同推动技术迭代与应用创新。 其设计目标聚焦于个人消费级硬件,包括常见的个人电脑、平板和智能手机。为此,系统算法经过深度优化,旨在确保即使在计算资源有限的低功耗设备上,亦能提供流畅无阻的交互响应。提供给开发者的一系列资源包,例如《附赠资源.docx》,内含有丰富的案例分析与API参考文档;《说明文件.txt》则系统性地阐述了快速启动、参数配置及故障排查的详细流程。而核心代码库“sage-main”包含了实现所有功能模块的原生源码,是开发者进行学习和二次开发的基础。 该项目融合了前沿的技术架构、广泛的应用潜力以及简便的部署方式。它不仅为用户创造了一种自然、直观的语音交互体验,同时也为开发者构建了坚实的知识资源和技术支撑。随着人工智能领域持续演进,这套系统有望在未来智能人机交互生态中占据关键位置。 资源来源于网络分享,仅用于学习交流使用,请勿用于商业,如有侵权请联系我删除!

21,494

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧