20110510 Brew工程师培训笔记——第十四章 使用ITextCtl接口

第十四章 使用ITextCtl接口

一、主要内容

(1)ITextCtl的主要功能

(2)ITextCtl的使用方法

(3)ITextCtl接口常用函数

(4)、输入法的设置

(5)、事件处理

(6)、多文本框控件的实现方法

二、ITextCtl 简介

三、ITextCtl接口使用手册

四、ITextCtl Properties

(1)ITextCtl支持下列属性(常用):

TP_MULTILINE

TP_FRAME

TP_PASSWORD

(2)、使用ITextCTL_SetProperties()函数来设置属性:

例如:

ITEXTCTL_SetProperties( pMe ->m_pITextCtl,  TP_MULTILINE | TP_FRAME);

五、ITextCtl 的常用函数

ITEXTCTL_SetTitle()

ITEXTCTL_SetText()

ITEXTCTL_GetText()

ITEXTCTL_GetTextPtr()

ITEXTCTL_SetMaxSize()

ITEXTCTL_GetCursorPos()

ITEXTCTL_SetCursorPos()

ITEXTCTL_GetProperties()

ITEXTCTL_SetProperties()

ITEXTCTL_SetRect()

ITEXTCTL_GetRect()

ITEXTCTL_IsActive()

ITEXTCTL_SetActive()

ITEXTCTL_Redraw()

ITEXTCTL_Reset()

六、ITextCtl的常用函数

(1)、设置文本标题:ITEXTCTL_SetTitle()

(2)、设置/读取文本

(a)、ITEXTCTL_SetText()

(b)、ITEXTCTL_GetText()

(c)、ITEXTCTL_GetTextPtr()

(3)、设置文本控件的最大字符数:ITEXTCTL_SetMaxSize()

七、常用函数

(1)、设置/读取光标的位置

(a)、ITEXTCTL_GetCursorPos()

(b)、ITEXTCTL_SetCursorPos()

(2)、设置/读取控件的属性

(a)、ITEXTCTL_GetProperties()

(b)、ITEXTCTL_SetProperties()

(3)、设置/读取文本框

(a)、ITEXTCTL_SetRect(ITextCtl * pITextCtl, const AEERect * prc)

(b)、ITEXTCTL_GetRect(ITextCtl * pITextCtl, AEERect * prc)

(4)、ITEXTCTL_SetActive()

(a)、ITEXTCTL_SetActive(ITextCtl * pITextCtl, boolean bActive)

bActive:

TRUE – 获得焦点,显示文本框

FALSE – 失去焦点

(b)、只有处于Active的控件才能输入文本并显示

(5)、ITEXTCTL_Redraw()

(6)、ITEXTCTL_Reset()

(a)、释放文本控件的所有资源,包括标题,文本,等

(b)、控件失去焦点,转入inactive状态

(c)、该函数一般用于重新初始化

八、输入法设置(一)

(1)、ITextCtl支持的输入模式:

AEE_TM_PINYIN           AEE_TM_STROKE

AEE_TM_LETTERS       AEE_TM_SYMBOLS

.etc   (defined in AEEText.h)

(2)、使用ITEXTCTL_SetInputMode() 设置输入法

(3)、使用下列函数获取手机支持的输入法:

(a)、ITEXTCTL_EnumModeInit()

(b)、ITEXTCTL_EnumNextMode() 

九、输入法设置(二)

使用ITEXTCTL_SetSoftKey()函数来设置输入法

十、ITextCtl 的消息处理

(1)、函数ITEXTCTL_HandleEvent()

Key 0-9:输入字符

LEFT/RIGHT:控制光标左右移动

UP/DOWN:控制光标上下移动

SELECT:焦点在SoftKey和文本框之间切换

(2)、需要使文本控件获得焦点才能进行文本输入

(a)、ITEXTCTL_SetActive(pMe-> pITextCtl, TRUE)

(b)、ITEXTCTL_IsActive()

十一、多文本控件的实现

(1)、需解决两个问题

(a)、如何让焦点在多个文本控件之间切换

(b)、如何设计输入法

(2)、解决方案

(a)、处理“EVT_CTL_TAB”事件

(b)、若每个文本框的输入法固定,则可调用函数ITEXTCTL_SetInputMode()直接进行设置;

(c)、若输入法并不固定,则需手动设计调出输入法并进行设置。

1、设计一个菜单,用于列出该设备的所有可供选择的输入模式;

2、获取该设备的所有可供选择的输入模式,如下的两个函数即可完成这样的功能:

ITEXTCTL_EnumModeInit( );

ITEXTCTL_EnumNextMode( );

3、当用户选择好输入模式后,需识别出用户选择的是哪种输入模式,然后将与其对应的文本框设置为该输入模式。

十二、本章关键

(1)ITextCtl的使用范围

(2)ITextCtl的使用方法和步骤

十三、问题回顾

(1)ITextCtl接口主要用于什么场合?

(2)如何使用ITextCtl接口?

(3)在使用输入法的时候,可采取哪些方式?需要注意什么问题?

(4)在对同一页面多文本框进行处理时,如何完成焦点在不同的文本框之间切换?

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值