找回密码
 立即注册
收起左侧

事件过滤器的问题

3
回复
8060
查看
[复制链接]
累计签到:35 天
连续签到:1 天
来源: 2018-4-10 17:14:53 显示全部楼层 |阅读模式
1Qter豆
我的目的是:给窗口A、窗口B添加事件过滤器,鼠标在窗口A中按下左键,然后拖动鼠标至窗口B中(期间鼠标左键一直按住),然后松开左键,此时触发函数X实现我接下来的操作。
我的思路是:在eventFilter 函数中,监视窗口A中鼠标move动作和左键press动作(条件1),在窗口B中监视鼠标左键release动作(条件2)。当条件1、2同时满足,触发函数X。
但在实际操作中遇到的问题是:在窗口A中按下鼠标左键,拖动到窗口B中释放,窗口B不“知道”鼠标左键释放了,条件2不会成立。反而窗口A“知道”鼠标已经释放。
请问有没有什么方法,可以实现我的目的?
谢谢!

回复

使用道具 举报

累计签到:436 天
连续签到:1 天
2018-4-10 19:02:18 显示全部楼层
为什么不直接用 Drag and Drop 呢?
回复

使用道具 举报

累计签到:35 天
连续签到:1 天
2018-4-12 15:29:07 显示全部楼层
miroox 发表于 2018-4-10 19:02
为什么不直接用 Drag and Drop 呢?

谢谢!昨天学习了一下,drag and drop,但很多地方不明白。
https://blog.csdn.net/iamshaofa/article/details/17629897
网上看了这个帖子,看起来比较靠谱,但还是许多地方不会。
能写一个简单的程序,我看一下怎么做吗?

点评

你在Qt Creator 的示例里搜一下drag & drop 或者 dnd ,我记得有好几个示例的。  详情 回复 发表于 2018-4-13 09:33
回复

使用道具 举报

累计签到:436 天
连续签到:1 天
2018-4-13 09:33:28 显示全部楼层
BourneCX 发表于 2018-4-12 15:29
谢谢!昨天学习了一下,drag and drop,但很多地方不明白。
https://blog.csdn.net/iamshaofa/article/det ...

你在Qt Creator 的示例里搜一下drag & drop 或者 dnd ,我记得有好几个示例的。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

公告
可以关注我们的微信公众号yafeilinux_friends获取最新动态,或者加入QQ会员群进行交流:190741849、186601429(已满) 我知道了