CAknSingleStyleListBox
1.在头文件中定义
CAknSingleStyleListBox * iListBox;
CDesCArrayFlat* iListBoxArray;
2.在cpp文件中ConstructL()中
//创建列表
iListBox = new (ELeave) CAknSingleStyleListBox;
iListBox->SetContainerWindowL(*this);
//iListbox->SetMopParent(this);
iListBox->ConstructL(this, /*EAknListBoxSelectionList*/
EAknListBoxSelectionList | EAknListBoxLoopScrolling);
iListBox->SetExtent(TPoint(0, 0), TSize(aRect.Size().iWidth,
aRect.Size().iHeight));
//数据操作
iListBoxArray = new (ELeave) CDesCArrayFlat(10);
CTextListBoxModel* model = iListBox->Model();
model->SetItemTextArray(iListBoxArray);
model->SetOwnershipType(ELbmOwnsItemArray);
//添加滚动条
iListBox->CreateScrollBarFrameL(ETrue);
iListBox->ScrollBarFrame()->SetScrollBarVisibilityL(
CEikScrollBarFrame::EOn, CEikScrollBarFrame::EAuto);
for (TInt i = 0; i < 10; i++)
{
TBuf<32> sTmpBuf;
sTmpBuf.Append(_L("/t wangshenghu"));
iListBoxArray->AppendL(sTmpBuf);
}
3.在析构函数中
delete iListBox;
4.在CountComponentControls()函数中
return 1;
5.在ComponentControl()函数中
switch (aIndex)
{
case 0:
{
return iListBox;
}
default:
return NULL;
}
6.在OfferKeyEventL()函数中
TKeyResponse ret(EKeyWasNotConsumed);
if (iListBox)
{
ret = iListBox->OfferKeyEventL(aKeyEvent, aType);
return ret;
}
return ret;
1.在头文件中定义
CAknSingleStyleListBox * iListBox;
CDesCArrayFlat* iListBoxArray;
2.在cpp文件中ConstructL()中
//创建列表
iListBox = new (ELeave) CAknSingleStyleListBox;
iListBox->SetContainerWindowL(*this);
//iListbox->SetMopParent(this);
iListBox->ConstructL(this, /*EAknListBoxSelectionList*/
EAknListBoxSelectionList | EAknListBoxLoopScrolling);
iListBox->SetExtent(TPoint(0, 0), TSize(aRect.Size().iWidth,
aRect.Size().iHeight));
//数据操作
iListBoxArray = new (ELeave) CDesCArrayFlat(10);
CTextListBoxModel* model = iListBox->Model();
model->SetItemTextArray(iListBoxArray);
model->SetOwnershipType(ELbmOwnsItemArray);
//添加滚动条
iListBox->CreateScrollBarFrameL(ETrue);
iListBox->ScrollBarFrame()->SetScrollBarVisibilityL(
CEikScrollBarFrame::EOn, CEikScrollBarFrame::EAuto);
for (TInt i = 0; i < 10; i++)
{
TBuf<32> sTmpBuf;
sTmpBuf.Append(_L("/t wangshenghu"));
iListBoxArray->AppendL(sTmpBuf);
}
3.在析构函数中
delete iListBox;
4.在CountComponentControls()函数中
return 1;
5.在ComponentControl()函数中
switch (aIndex)
{
case 0:
{
return iListBox;
}
default:
return NULL;
}
6.在OfferKeyEventL()函数中
TKeyResponse ret(EKeyWasNotConsumed);
if (iListBox)
{
ret = iListBox->OfferKeyEventL(aKeyEvent, aType);
return ret;
}
return ret;