ListBox 继承了 ScrollableBox 容器属性和方法,更多可用属性和方法请参考:ScrollableBox 容器
| 属性名称 | 默认值 | 参数类型 | 用途 |
|---|---|---|---|
| scrollselect | false | BOOL | 是否随滚动改变选中项,如(false) |
| 接口名称 | 用途 |
|---|---|
| ScrollItemToTop | 滚动到指定子项位置 |
| GetTopItem | 获取当前位置第一个子项 |
| SetItemIndex | 设置子项的位置索引 |
| Previous | 选中上一项 |
| Next | 选中下一项 |
| ActiveItem | 触发选中项的双击事件 |
| Add | 追加一个子项到末尾 |
| AddAt | 在指定位置之后插入一个子项 |
| Remove | 根据子项指针 |
| RemoveAt | 根据索引移除一个子项 |
| RemoveAll | 移除所有子项 |
| SortItems | 排列子项 |
| ItemComareFunc | 默认的子项对比方法 |
| GetScrollSelect | 获取是否随滚动改变选中项设置 |
| SetScrollSelect | 设置是否随滚动改变选中项设置 |
| AttachSelect | 监听选择子项的事件 |
| SelectNextWhenActiveRemoved | 在移除一个子项后自动选择下一项 |
滚动到指定子项位置
virtual bool ScrollItemToTop(const std::wstring& strItemName)- 参 数:
strItemName子项名称
- 返回值:成功返回 true,否则为 false,可能控件不存在
获取当前位置第一个子项
virtual Control* GetTopItem()- 参 数:无
- 返回值:返回第一个子项指针
设置子项的位置索引
bool SetItemIndex(Control* pControl, std::size_t iIndex)- 参 数:
pControl子项指针iIndex索引号
- 返回值:成功返回 true,否则返回 false
选中上一项
void Previous()- 参 数:无
- 返回值:无
选中下一项
void Next()- 参 数:无
- 返回值:无
触发选中项的双击事件
void ActiveItem()- 参 数:无
- 返回值:无
追加一个子项到末尾
bool Add(Control* pControl)- 参 数:
pControl子项指针
- 返回值:成功返回 true,失败返回 false
在指定位置之后插入一个子项
bool AddAt(Control* pControl, int iIndex)- 参 数:
pControl子项指针iIndex要插入的位置索引
- 返回值:成功返回 true,失败返回 false
根据子项指针
bool Remove(Control* pControl)- 参 数:
pControl子项指针
- 返回值:成功返回 true,失败返回 false
根据索引移除一个子项
bool RemoveAt(int iIndex)- 参 数:
iIndex子项索引
- 返回值:成功返回 true,失败返回 false
移除所有子项
void RemoveAll()- 参 数:无
- 返回值:无
排列子项
bool SortItems(PULVCompareFunc pfnCompare, UINT_PTR dwData)- 参 数:
pfnCompare自定义排序函数dwData用于子项对比时的数据
- 返回值:成功返回 true,失败返回 false
默认的子项对比方法
static int __cdecl ItemComareFunc(void *pvlocale, const void *item1, const void *item2)- 参 数:
pvlocale保存 List 指针item1子项1item2子项2
- 返回值:返回对比结果
获取是否随滚动改变选中项设置
bool GetScrollSelect()- 参 数:无
- 返回值:返回 true 表示跟随滚动条改变选择项,否则为 false
设置是否随滚动改变选中项设置
void SetScrollSelect(bool bScrollSelect)- 参 数:
bScrollSelect为 true 是为跟随滚动条改变选中项,false 为不跟随
- 返回值:无
监听选择子项的事件
void AttachSelect(const EventCallback& callback)- 参 数:
callback选择子项时的回调函数
- 返回值:无
在移除一个子项后自动选择下一项
void SelectNextWhenActiveRemoved(bool bSelectNextItem)- 参 数:
bSelectNextItem为 true 时自动选择下一项,false 为不自动选择
- 返回值:无