第7天 Symbian学习之开发实践:视图及按键交互

Symbian学习笔记

学习目标: 掌握基本的Symbian视图应用程序框架与程序交互方法 
学习内容: 视图应用程序框架,程序交互 
练习: 做一个简单的程序,能在屏幕上显示出对应按键的值。 

一、视图应用程序框架
视图应用程序框架包括:
应用程序类:用于定义应用程序的属性,还用于生成新的空白文档。定义UID;
文档类:标识应用程序的数据模型,创建应用程序用户接口app ui。
应用程序UI类:它创建一个应用程序视图,来处理绘图和处理基于屏幕的交互。
应用程序视图类:在屏幕上绘制应用程序的界面内容,允许用户与之交互。
二、程序交互
应用程序UI类是处理事件的接口,
CControlsTestAppUi::HandleKeyEventL(const TKeyEvent& aKeyEvent,TEventCode /*aType*/)
处理后返回EKeyWasConsumed否则返回EKeyWasNotConsumed;告知事件已经是否已经处理。比如下面的代码:

 

CControlsTestAppUi::HandleKeyEventL(const TKeyEvent& aKeyEvent,TEventCode /*aType*/)
{
      if (aType  ==  EEventKey) // 过虑非按键事件,并且只取按下的事件
{
  TBuf16
<10> buf;
  TInt i 
= aKeyEvent.iScanCode;//获取键值
  buf.AppendFormat(_L("KeyCode=%d"),i);
  iEikonEnv
->InfoMsg(buf);//提示信息
  iAppContainer->SetLabelText(buf);//更新视图Label内容
  iAppContainer->DrawNow();//立即重新绘制视图
  return EKeyWasConsumed;
}

return  EKeyWasNotConsumed;
 


return EKeyWasNotConsumed;
CControlsTestAppUi::HandleCommandL(TInt aCommand)处理按钮事件
控件上的事件由视图类里处理事件的接口来处理,不过首先需要控件设置对应的事件观察器MCoeControlObserver。
这里就是试图类CControlsTestView::HandleControlEventL(CCoeControl* aControl,TCoeEvent aEventType)
三、上次遗留问题
大文件读写问题:在使用10字节的缓冲时,读取1M的文件,尽管代码简洁,但是处理速度很慢,使用了将近10秒的时间。在扩大缓存至3k(申请4k栈空间失败)时,每次读取3k字节,这样处理速度不到1毫秒。由此可以得出结论:文件读写很费时间,可以设置一个比较大的缓冲来读写,减少文件操作的次数,提高文件处理速度。此外,栈空间比较小,申请较大的栈空间可能会出现unresolved external symbol __chkstk错误。
四、总结
1、熟悉视图结构。
2、熟悉图形界面操作流程,按键指针事件的传递及处理。 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Symbian刷机软件是一种应用程序,可以帮助用户在Symbian操作系统的智能手机上进行刷机操作。刷机是指将手机的操作系统替换为另一个版本或修改现有版本的过程。 刷机软件通常具有以下几个主要功能: 1. 刷机固件更新:通过使用刷机软件,用户可以安装最新的操作系统版本,以便享受较新的功能、修复漏洞和提高手机性能。 2. 刷机解锁:有些手机运营商对手机进行了锁定,限制了用户对手机进行一些自定义设置或更换SIM卡。通过刷机软件,可以解锁手机,使其具有更大的自由度。 3. 安装定制ROM:一些用户喜欢通过自定义ROM来改变手机的外观和功能。使用刷机软件,用户可以在手机上安装定制ROM,以实现个性化的体验。 4. 清除手机数据:在刷机过程中,用户经常需要清除手机上的数据,以确保干净的安装。刷机软件可以帮助用户轻松地备份和清除手机上的数据。 刷机软件的使用需要谨慎,因为错误的操作可能会导致手机无法使用或丢失数据。在使用刷机软件之前,建议用户先备份手机数据,并确保下载合法和可信赖的刷机软件。 总结起来,Symbian刷机软件是一种帮助用户在Symbian操作系统的智能手机上进行刷机操作的应用程序。它提供了多种功能,如固件更新、解锁、定制ROM安装和数据清除。然而,使用刷机软件需要谨慎,并建议用户备份手机数据并下载可信赖的软件。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值