winCE 怎么实现锁住触摸屏和按键


原帖:http://www.myexception.cn/wince/195404.html


如何实现锁住触摸屏和按键

目前我想实现按键盘中的某个键锁住触摸屏和按键,让他们都不响应,再按这个键,则解锁
各位有什么好办啊

------解决方案--------------------------------------------------------
禁用触摸屏的中断,在键盘钩子中过滤按键。 
------解决方案--------------------------------------------------------
可以发一个消息给驱动层,让驱动层接收到消息的时候屏蔽触摸屏中断 
------解决方案--------------------------------------------------------
TOUCH的PDD层有些函数可能可以实现点击屏幕无响应。 
------解决方案--------------------------------------------------------
探讨
键盘钩子应该是在应用层实现的吧,如何在底层驱动实现,按某个键可以锁住键盘,再按这个键可以解锁的功能呢?

------解决方案--------------------------------------------------------
1、在按键驱动跟TP驱动里面创建一个同名事件,

2、在按键的KEYBDMDD中获取锁屏按键是否按下, 如果按下则发锁屏事件给TP驱动,

3、TP驱动中创建一个线程专门等待按键驱动发出来的锁屏事件,收到锁屏事件后,调用。
DdsiTouchPanelPowerHandler(BOOL bOff)
{
RETAILMSG(TS_DBGON, (TEXT("::: DdsiTouchPanelPowerHandler()\r\n")));
if (bOff)
{
TSP_PowerOff();
}
else
{
TSP_PowerOn();
}
}


------解决方案--------------------------------------------------------
钩子没用过,不过在驱动中改应该也挺简单的,只需要吧触摸屏的中断关了就好
至于键盘可以不给上层发键值就可以了。我的bsp是在IsrThreadProc函数中,建议楼主可以看看
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值