当前位置: 代码迷 >> Brew >> BREW里面的触摸屏,点击的时候取出的点击点X、Y坐标如何数值好大
  详细解决方案

BREW里面的触摸屏,点击的时候取出的点击点X、Y坐标如何数值好大

热度:4856   发布时间:2013-02-26 00:00:00.0
BREW里面的触摸屏,点击的时候取出的点击点X、Y坐标怎么数值好大?

我在EVT_POINTER_DOWN这个事件中捕获按下去的点的X,Y坐标。代码如下:

C/C++ code
void HF_touch_down(uint32 dwParam,happyfamily240x320* pMe){    uint32 m_local;    pMe->click_x = dwParam>>16;    m_local = dwParam<<16;    pMe->click_y = m_local>>16;    if( ( pMe->click_x>HF_TOUCH_ONE_X && pMe->click_x<(HF_TOUCH_ONE_X+40) ) && ( pMe->click_x>HF_TOUCH_ONE_Y && pMe->click_x<(HF_TOUCH_ONE_Y+35)) )    {        HF_key_2_press(pMe);    }}


帮我看看有错吗?



我跟踪代码后 发现(我在触摸屏上随便点的,但是数值太大)
dwParam 等于 54581248
pMe->click_x 等于 832
pMe->click_y 等于 55296

屏幕是240*320的


谁给我个触摸屏的简单的例子也行,BREW里面有没有求高、低位数值的函数?

------解决方案--------------------------------------------------------
使用 AEE_POINTER_GET_XY()
------解决方案--------------------------------------------------------
AEE_POINTER_GET_X
AEE_POINTER_GET_Y

不应该没有的

顺便说一下 有些手机 只发送PEN事件 有些手机只发送POINTER事件 还有的两个事件都发

需要处理好

另外 一些手机 在触摸屏幕边缘的时候(大概5pix左右) 取得的坐标是不正常的 适当屏蔽掉
------解决方案--------------------------------------------------------
探讨
这个函数怎么在BREW文档里面找不到?
  相关解决方案