Symbian ListBox 常用技巧
2010-03-17 21:06:00 来源:WEB开发网CleanupStack::PushL(array);
for(TInt i=0;i
{
TBuf<50> buf;
buf.Append(_L(" "));
buf.Append(pAppui->iNameArray[i]->GetName()->Des());
if(i == iOldIndex)
{
buf.Append(_L(" 0"));// 在文件最后添加 0的方式选择图标
}
array->AppendL(buf);
}
CleanupStack::Pop();
iListBox->Model()->SetItemTextArray(array);
}
if(pAppui->iPriviewIndex < 0)
{
iListBox->SetCurrentItemIndex(iOldIndex);// 创建完成LISTBOX后,设置选中的项
}
else
{
iListBox->SetCurrentItemIndex(pAppui->iPriviewIndex);// 创建完成LISTBOX后,设置选
中的项
}
}
//响应用户按OK键
void CSingleListBoxContainer::HandleListBoxEventL(CEikListBox* aListBox, TListBoxEvent
aListBoxEvent)
{
if (aListBoxEvent == MEikListBoxObserver::EEventEnterKeyPressed)
{
//响应OK键
}
}
//根据需求,重新设置LISTBOX上的文本.或者调整图标
void CSingleListBoxContainer::ModifyItem()
{
CDesCArray* iListBoxArray= STATIC_CAST(CDesCArray*, iListBox->Model()->ItemTextArray());
//得到LISTBOX上的所有文本,并转换成数组
TInt len = iListBoxArray->Count();
for(TInt i=0;i
{
if(i == iOldIndex)
{
TBuf<120> buf;
buf.Append(_L(" "));
buf.Append(pAppui->iNameArray[i]->GetName()->Des());
iListBoxArray->Delete(i);// 先删掉原有文本
iListBoxArray->InsertL(i,buf);// 再重新插入文本.
//用此方式才能修改内容
}
if(i == index)
{
更多精彩
赞助商链接