• 8544阅读
  • 13回复

怎么把获得的X,Y坐标值转换成鼠标事件 [复制链接]

上一主题 下一主题
离线duduqq
 

只看楼主 倒序阅读 楼主  发表于: 2008-03-26
— 本帖被 XChinux 执行加亮操作(2008-03-29) —
怎么把获得的X,Y坐标值转换成鼠标事件,比如说转换成鼠标移动和鼠标按下这些动作,有什么函数可以解决,QMouseEvent这个函数可以用的吗,如何使用,麻烦哪位大侠指导一下。

下面有好几位回了贴,不过可能是我表达不清楚,大家的方法我试过都没有用。
我的意思是说随着X,Y的值的变动,鼠标的光标跟着移动,还有我有一个标志位,标志着鼠标按下或放开的值的,当这个值为0时为放下,1为按下,也就是当我收到一个标志位为0时鼠标会在那个位置点击。
哪位能帮帮我啊,这个问题真的很急啊,我搞了一个星期还没有搞好,麻烦大家了。
[ 此贴被duduqq在2008-03-31 16:57重新编辑 ]
离线rianter
只看该作者 1楼 发表于: 2008-03-26
QPoint curPoint = event->pos();
then override the function in widget:
void mousePressEvent(QMouseEvent *event);
void mouseMoveEvent(QMouseEvent *event);
离线duduqq

只看该作者 2楼 发表于: 2008-03-26
这样行得通的吗,可不可以说得具体一点,谢谢
离线duduqq

只看该作者 3楼 发表于: 2008-03-27
哪位大侠可以帮帮忙解决啊
离线duduqq

只看该作者 4楼 发表于: 2008-03-27
这个问题好难啊,有谁可以帮帮忙啊
离线XChinux

只看该作者 5楼 发表于: 2008-03-29
调用QApplication::sendEvent()
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
离线kimyq
只看该作者 6楼 发表于: 2008-03-30
重载void mousePressEvent(QMouseEvent *e),然后在里面通过e->x();e->y()来获得X,Y的值就行了。
离线sunote

只看该作者 7楼 发表于: 2008-03-30
QMouseEvent ( Type type, QPoint ( int xpos, int ypos ) , int button, int state ) ,把另外两个参数也换掉
离线duduqq

只看该作者 8楼 发表于: 2008-03-31
各位大侠,你们每人都写一句,可不可以综合写啊,我学QT不久,还不是很了解要如何把这些东西组织起来。
离线XChinux

只看该作者 9楼 发表于: 2008-03-31
在Assistant里就有,查找sendEvent关键字就能查到,人家都有例子。
QMouseEvent event(QEvent::MouseButtonPress, pos, 0, 0, 0);
QApplication::sendEvent(mainWindow, &event);
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
离线duduqq

只看该作者 10楼 发表于: 2008-03-31
XChinux你说的那个例子我看了,好像是获取鼠标的坐标值的吧,并不是把坐标值转换为鼠标事件的
离线duduqq

只看该作者 11楼 发表于: 2008-03-31
各位好像都理解我的意思了吧,我的意思是说随着X,Y的值的变动,鼠标光标跟着移动
离线duduqq

只看该作者 12楼 发表于: 2008-04-01
没人帮得上忙吗,看来我超级晕了
离线jiwenyu

只看该作者 13楼 发表于: 2009-05-12
过这么久了,不知道楼主解决没有

我也遇到了这样的问题,如果楼主解决了的话,希望能告知与大家分享谢谢!
快速回复
限100 字节
 
上一个 下一个