如何才能检查键盘锁事件

如何才能检查键盘锁事件?

  • 开发伙伴平台:

S60 3rd Edition

 

  • 详细描述

我们通过window server请求一个单独的事件,即可监控键盘锁的开启与关闭。


为了获得这些事件,首先我们需要调用RWsSession::EventReady(),EventReady()是一个异步方法,所以自然是被活动对象所调用(即从CActive派生的对象):

 

iCoeEnv->WsSession().EventReady( &iStatus );
 
SetActive();



当请求完成后,CActive::RunL()即被调用,此时可通过RWsSession::GetEvent()读取到事件。


相关的事件类型如下(在eikon.hrh中有所定义):

 

EEikKeyLockEnabled = 1110
 
EEikKeyLockDisabled = 1111



下面是RunL()中一段示例代码:

void CMyEventListener::RunL()
 
    {
 
    if(iStatus == KErrNone)
 
        {
 
        // get the event
 
        TWsEvent wsEvent;
 
    iCoeEnv->WsSession().GetEvent(wsEvent);
 
        switch( wsEvent.Type() )
 
    {
 
    case EEikKeyLockEnabled:
 
        {
 
                        // keylock was enabled
 
    break;
 
    }
 
    case EEikKeyLockDisabled:
 
    {
 
    // keylock was disabled
 
    break;
 
    }
 
        case EEventNull: 
 
        default:
 
            break;
 
            }
 
        // request next event
 
        iCoeEnv->WsSession().EventReady( &iStatus );
 
        SetActive(); 
 
        }
 
    }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值