1.在*AppView.h文件中 *AppView类 加入
CEikEdwin* iEikEdwin; // edit control to display the result
public: // New methods
void SetTextL( const TDesC& aText );
private:
TInt CountComponentControls() const;
CCoeControl* ComponentControl(TInt aIndex) const;
ps:CountComponentControls 和ComponentControl继承 MCoeControlObserver
//需要加上这个类才能在 output 控件中正常显示 。复合控件的处理
但是 也可以不继承 MCoeControlObserver,自继承CCoeControl,但同样需要实现 这两个函数
2.实现
void SetTextL( const TDesC& aText );
TInt CountComponentControls() const;
CCoeControl* ComponentControl(TInt aIndex) const;
函数如下
void CxmlparserAppView::SetTextL( const TDesC& aText)
{
iEikEdwin->SetTextL( &aText ) ;
DrawNow();
}
TInt CxmlparserAppView::CountComponentControls() const
{
return 1;
}
// --------------------------------------------------------------------------
CCoeControl* CxmlparserAppView::ComponentControl(TInt aIndex) const
{
switch ( aIndex )
{
case 0:
return iEikEdwin;
default:
return NULL;
}
}
3.在*AppView.cpp 文件的 constructL 函数
4.
void CxmlparserAppView::SizeChanged()
{
if ( iEikEdwin )
{
iEikEdwin->SetExtent(TPoint(0, 0), Rect().Size());
}
DrawNow();
}
待续!