Symbian OS 控件开发之 CCoeControl
2010-03-07 19:41:00 来源:WEB开发网核心提示:CCoeControl::DrawNow();立即重绘整个控件;void CCoeControl::DrawDeferred()const;一旦有机会就重绘整个控件;void RWindow::Invalidate(const TRect&);一旦有机会就重绘由参数指定的矩形区域,然而通过将重绘活动限制在矩形中,Sym
CCoeControl::DrawNow();立即重绘整个控件;void
CCoeControl::DrawDeferred()const;一旦有机会就重绘整个控件;void RWindow::Invalidate(const
TRect&);一旦有机会就重绘由参数指定的矩形区域。然而通过将重绘活动限制在矩形中,几乎不会节省很多开销,因此,编写大多数控件时,一般忽略传递限制矩形参数。
用户输入处理:
Symbian OS中处理用户输入的两个基本函数是OfferKeyEventL()和HandlePointerEventL()。由于Series60平台不支持笔写输入,所以主要使用OfferKeyEventL()。下面是一个简单控件处理按键事件的代码:
TKeyResponse CSimpleControl::OfferKeyEventL(const TKenEvent& aKeyEvent, TEventCode aType)
{
switch(aType)
{
case: EEventKey:
if (aKeyEvent.iScanCode == EStdKeyNkp5 || aKeyEvent.iScanCode == EStdKeyEnter)
iMyGameEngine->Fire();
break;
case: EEventKeyDown:
//....
case: EEventKeyUp:
//....
}
return EKeyWasNotConsumed;
}
更多精彩
赞助商链接