Symbian ListBox 常用技巧
2010-03-17 21:06:00 来源:WEB开发网Symbian关于listBox的常用技巧小结
最近很少更新blog文章了.
目前因项目需要主要接触了UI的开发,涉及到UI基本都要用到LISTBOX.
现将其中用到的listBox的一些处理总结一下.
为自己做个备忘.也为大家做个参考吧.
其实官方出了一个关于LISTBOX的例子,例子很全基本包含了所有关于LISTBOX的
应用.小弟根据自己的研究和自己开发中的经验在此总结一下.
其实LISTBOX有多种方格用法都非常接近,精通一个后基本都会了.
1.创建listbox
void CSingleListBoxContainer::CreateList()
{
iListBox = new (ELeave)CAknSingleStyleListBox;//创建listbox
iListBox->SetContainerWindowL(*this);//绑定窗口
// Second Phase Construction
TResourceReader reader;//加载资源
CEikonEnv::Static()->CreateResourceReaderLC
(reader,R_LISTBOX_SINGLE);//R_SIMPLELIST_LISTBOX);
iListBox->ConstructFromResourceL(reader);//用资源初始化
CleanupStack::PopAndDestroy(); // reader
///Add icon//加载图标这里的图标可以有很多,不同类型的图标代用户使用
CArrayPtr
CleanupStack::PushL(icons);
icons->AppendL(iEikonEnv->CreateIconL(KDoubleListBoxmbm,EMbm20028c74Marked,
EMbm20028c74Marked_mask));
CleanupStack::Pop();
iListBox->ItemDrawer()->ColumnData()->SetIconArray(icons);
****AppUi* pAppui = static_cast<****AppUi*>(iCoeEnv->AppUi());//通常用的技巧.用UI保存全
局变量数据
iOldIndex = pAppui->iSChoicendex;//得到上次选择的索引
//以下是创建动态的LISTBOX,根据需要创建listbox项
TInt len = pAppui->iNameArray.Count();
pAppui->iChoice = pAppui->iNameArray[iOldIndex]->GetName();//得到上次选择的文件名
if(len > 0)
{
//添加文本
CDesCArrayFlat* array = new (ELeave) CDesCArrayFlat(len);
更多精彩
赞助商链接