在第三版和第五版上分别响应CEikEdwin的HandlePointerEventL事件

本文主要是介绍在第三版和第五版上分别响应CEikEdwin的HandlePointerEventL事件,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1.定义两个CEikEdwin
CEikEdwin* iEdwin1;
CEikEdwin* iEdwin2;


    enum TControlIDS
        {
        EfirstEd, E2ndEd
        };

//创建:
    //动态创建名称编辑框
    iEdwin1 = new (ELeave) CEikEdwin;
    iEdwin1->SetContainerWindowL(*this);
    iEdwin1->ConstructL(EAknEditorFlagDefault, 11, 11, 1);
    iEdwin1->SetFocus(ETrue);
    iEdwin1->SetAknEditorAllowedInputModes(EAknEditorNumericInputMode);
    iEdwin1->SetAknEditorInputMode(EAknEditorNumericInputMode);
    iEdwin1->SetAknEditorCurrentInputMode(EAknEditorNumericInputMode);
    iEdwin1->SetAknEditorNumericKeymap(EAknEditorPlainNumberModeKeymap);
    iEdwin1->ActivateL();

    iEdwin2 = new (ELeave) CEikEdwin;
    iEdwin2->SetContainerWindowL(*this);
    iEdwin2->ConstructL(EAknEditorFlagDefault, 11, 11, 1);
    iEdwin2->SetFocus(EFalse);
    iEdwin2->ActivateL();




在Containers中设置实现:
void CloginContainer::HandlePointerEventL(const TPointerEvent& aPointerEvent)
    {
    TBool penEnabled = EFalse;
    RLibrary avkonDll;
    if (avkonDll.Load(_L( "avkon.dll" )) == KErrNone)
        {
#ifdef __WINS__
        TLibraryFunction PenEnabled = avkonDll.Lookup( 3184 );
#else
        TLibraryFunction PenEnabled = avkonDll.Lookup(4251);
#endif
        if (PenEnabled != NULL)
            {
            penEnabled = PenEnabled();
            }
        avkonDll.Close();
        }

    if (!penEnabled)
        {
        return;
        }

    // Remove last focus
    CCoeControl* iFocusedControl;
    iFocusedControl = ComponentControl(iCurrentControl);

    if (aPointerEvent.iType == TPointerEvent::EButton1Up)
        {
        TPoint inewPointer = aPointerEvent.iPosition;
        if (iEdwin1->Rect().Contains(inewPointer))
            if (iCurrentControl != EfirstEd)
                {
                iCurrentControl = EfirstEd;
                iFocusedControl->SetFocus(EFalse);
                iEdwin1->SetFocus(ETrue, EDrawNow);
                }

        if (iEdwin2->Rect().Contains(inewPointer))
            if (iCurrentControl != E2ndEd)
                {
                iCurrentControl = E2ndEd;
                iFocusedControl->SetFocus(EFalse);
                iEdwin2->SetFocus(ETrue, EDrawNow);
                }
        }
    CCoeControl::HandlePointerEventL(aPointerEvent);
    }




经过这个,在v3和v5上都可以适用了。
测试机型:5230、6730

这篇关于在第三版和第五版上分别响应CEikEdwin的HandlePointerEventL事件的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


原文地址:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.chinasem.cn/article/862333

相关文章

spring @EventListener 事件与监听的示例详解

《spring@EventListener事件与监听的示例详解》本文介绍了自定义Spring事件和监听器的方法,包括如何发布事件、监听事件以及如何处理异步事件,通过示例代码和日志,展示了事件的顺序... 目录1、自定义Application Event2、自定义监听3、测试4、源代码5、其他5.1 顺序执行

springMVC返回Http响应的实现

《springMVC返回Http响应的实现》本文主要介绍了在SpringBoot中使用@Controller、@ResponseBody和@RestController注解进行HTTP响应返回的方法,... 目录一、返回页面二、@Controller和@ResponseBody与RestController

SpringBoot定制JSON响应数据的实现

《SpringBoot定制JSON响应数据的实现》本文主要介绍了SpringBoot定制JSON响应数据的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们... 目录前言一、如何使用@jsonView这个注解?二、应用场景三、实战案例注解方式编程方式总结 前言

Spring MVC如何设置响应

《SpringMVC如何设置响应》本文介绍了如何在Spring框架中设置响应,并通过不同的注解返回静态页面、HTML片段和JSON数据,此外,还讲解了如何设置响应的状态码和Header... 目录1. 返回静态页面1.1 Spring 默认扫描路径1.2 @RestController2. 返回 html2

使用Python实现批量访问URL并解析XML响应功能

《使用Python实现批量访问URL并解析XML响应功能》在现代Web开发和数据抓取中,批量访问URL并解析响应内容是一个常见的需求,本文将详细介绍如何使用Python实现批量访问URL并解析XML响... 目录引言1. 背景与需求2. 工具方法实现2.1 单URL访问与解析代码实现代码说明2.2 示例调用

Python中的异步:async 和 await以及操作中的事件循环、回调和异常

《Python中的异步:async和await以及操作中的事件循环、回调和异常》在现代编程中,异步操作在处理I/O密集型任务时,可以显著提高程序的性能和响应速度,Python提供了asyn... 目录引言什么是异步操作?python 中的异步编程基础async 和 await 关键字asyncio 模块理论

禁止平板,iPad长按弹出默认菜单事件

通过监控按下抬起时间差来禁止弹出事件,把以下代码写在要禁止的页面的页面加载事件里面即可     var date;document.addEventListener('touchstart', event => {date = new Date().getTime();});document.addEventListener('touchend', event => {if (new

深入理解RxJava:响应式编程的现代方式

在当今的软件开发世界中,异步编程和事件驱动的架构变得越来越重要。RxJava,作为响应式编程(Reactive Programming)的一个流行库,为Java和Android开发者提供了一种强大的方式来处理异步任务和事件流。本文将深入探讨RxJava的核心概念、优势以及如何在实际项目中应用它。 文章目录 💯 什么是RxJava?💯 响应式编程的优势💯 RxJava的核心概念

FreeRTOS内部机制学习03(事件组内部机制)

文章目录 事件组使用的场景事件组的核心以及Set事件API做的事情事件组的特殊之处事件组为什么不关闭中断xEventGroupSetBitsFromISR内部是怎么做的? 事件组使用的场景 学校组织秋游,组长在等待: 张三:我到了 李四:我到了 王五:我到了 组长说:好,大家都到齐了,出发! 秋游回来第二天就要提交一篇心得报告,组长在焦急等待:张三、李四、王五谁先写好就交谁的

简单的角色响应鼠标而移动

actor类 //处理移动距离,核心是找到角色坐标在世界坐标的向量的投影(x,y,z),然后在世界坐标中合成,此CC是在地面行走,所以Y轴投影始终置为0; using UnityEngine; using System.Collections; public class actor : MonoBehaviour { public float speed=0.1f; CharacterCo