List control
#include <UiList_H.h>
继承自UiWin。
公有成员 | |
void | AddItem (ListItem &item) |
添加项 | |
virtual int | CalcContentLeftPosH () |
virtual int | CalcContentWidth () |
计算(返回)控件的内容总宽度 | |
virtual int | CalcIndexOfPos (int xPos, int yPos) |
根据坐标算出项的索引值,返回-1为找不到 | |
int | CalcIndexOfPosAsButton (int xPos, int yPos) |
virtual int | CalcItemLeftPos (int index) |
virtual bool | CalcItemRect (int index, __in RECT *prcWin, __out RECT *pRect) |
计算某项矩形 | |
virtual int | CalcItemWidth (int index) |
int | CalcTotalItemsWidth () |
获得所有项的宽度 | |
virtual void | DrawItem (HDC hdcDst, int nIndex, RECT *prcItem, RECT *prcWin, RECT *prcUpdate) |
画某一项 | |
void | EnableGridlines (bool bEnable) |
显示分格线 | |
void | EnableUltraGridlines (bool bEnable) |
void | EnableVaryItemWidth (bool bEnable) |
允许项的宽度不同 | |
E_DOCK_MODE | GetAutoDockMode () |
RECT | GetAutoSelectRect () |
BOOL | GetExtendedProperty_UiList_H (int nPropertyType, void *pValue, int nBufSize) |
获取或设置对象的扩展属性值 | |
int | GetFirstVisibleItemIndex (int &nItemLeftPos, RECT *prcWin, RECT *prcUpdate) |
获得第一个可见的项, 返回-1表示全部不可见 | |
MZFC_INLINE COLORREF | GetGridlineColor_GradientBottomLeft () |
MZFC_INLINE COLORREF | GetGridlineColor_GradientBottomrRight () |
MZFC_INLINE COLORREF | GetGridlineColor_GradientTopLeft () |
MZFC_INLINE COLORREF | GetGridlineColor_GradientTopRight () |
ListItem * | GetItem (int index) |
通过索引获得项 | |
virtual int | GetItemCount () |
获得项总数 | |
int | GetItemWidth (int index) |
取得某一项宽度 | |
int | GetLeftPos () |
int | GetOriginOffset () |
int | GetSelectedIndex () |
获得被选中项的索引,-1为无选中项 | |
void | InsertItem (ListItem &item, int nPos=-1) |
插入项0-最前;1-最后 | |
void | InvalidateItem (int nIndex) |
BOOL | IsAutoSelect () |
bool | IsEnableVaryItemWidth () |
获得是否允许宽度不同 | |
bool | IsGridlinesEnabled () |
bool | IsUltraGridlinesEnabled () |
void | MoveLeftPos (int nOffset) |
virtual int | OnLButtonDown (UINT fwKeys, int xPos, int yPos) |
mouse message handlers | |
virtual int | OnLButtonUp (UINT fwKeys, int xPos, int yPos) |
当控件被左键放开时,此函数会被调用. | |
virtual int | OnMouseMove (UINT fwKeys, int xPos, int yPos) |
当控件上鼠标移动时,此函数会被调用. | |
virtual void | OnRemoveItem (int nIndex) |
项被删除前调用此函数 | |
virtual void | OnSelectItem (int nIndex, UINT fwKeys, int xPos, int yPos) |
当选中项时调用 | |
virtual int | OnTimer (UINT_PTR nIDEvent) |
当Timer到达时,此函数会被调用. | |
void | PaintWin (HDC hdc, RECT *prcWin, RECT *prcUpdate) |
绘制控件 | |
void | RemoveAll () |
删除所有项 | |
void | RemoveItem (int nIndex) |
移除项 | |
void | ScrollStart (double fScrollSpeed) |
开始滚动 | |
void | ScrollStop () |
结束滚动 | |
void | ScrollTo (int nScrollToType=UI_SCROLLTO_TOP, int nDstLeftPos=0, bool bAnimate=true) |
滚动控件内容至某个位置 | |
void | SetAutoDockMode (E_DOCK_MODE nMode) |
void | SetAutoSelect (BOOL bAuto) |
BOOL | SetExtendedProperty_UiList_H (int nPropertyType, void *pValue, int nBufSize) |
获取或设置对象的扩展属性值 | |
void | SetGridlineColor_GradientBottomLeft (COLORREF clrGridline) |
set color of bottom the grid line's left gradient | |
void | SetGridlineColor_GradientBottomRight (COLORREF clrGridline) |
set color of bottom the grid line's middle gradient | |
void | SetGridlineColor_GradientTopLeft (COLORREF clrGridline) |
set color of top the grid line's left gradient | |
void | SetGridlineColor_GradientTopRight (COLORREF clrGridline) |
set color of top the grid line's middle gradient | |
void | SetItemWidth (int nWidth) |
设置某一项宽度 | |
void | SetLeftPos (int nLeftPos) |
void | SetOriginOffset (int offset) |
the offset of the content top position to the control's origin | |
void | SetSelectedIndex (int index) |
设置某项被选中,-1为没有项被选中 | |
UiList_H (void) | |
~UiList_H (void) | |
保护属性 | |
bool | m_bEnableVaryItemWidth |
bool | m_bIsDocked |
bool | m_bIsEnableDragScroll |
bool | m_bMouseDown |
E_DOCK_MODE | m_eAutoDockMode |
int | m_nDragMode |
int | m_nItemWidth |
int | m_nOriginOffset |
int | m_nSelectedIndex |
List control
UiList_H::UiList_H | ( | void | ) |
UiList_H::~UiList_H | ( | void | ) |
void UiList_H::AddItem | ( | ListItem & | item | ) |
添加项
operations to items
virtual int UiList_H::CalcContentLeftPosH | ( | ) | [virtual] |
virtual int UiList_H::CalcContentWidth | ( | ) | [virtual] |
计算(返回)控件的内容总宽度
重载UiWin。
virtual int UiList_H::CalcIndexOfPos | ( | int | xPos, | |
int | yPos | |||
) | [virtual] |
根据坐标算出项的索引值,返回-1为找不到
int UiList_H::CalcIndexOfPosAsButton | ( | int | xPos, | |
int | yPos | |||
) |
virtual int UiList_H::CalcItemLeftPos | ( | int | index | ) | [virtual] |
virtual bool UiList_H::CalcItemRect | ( | int | index, | |
__in RECT * | prcWin, | |||
__out RECT * | pRect | |||
) | [virtual] |
计算某项矩形
virtual int UiList_H::CalcItemWidth | ( | int | index | ) | [virtual] |
获得某一项宽度 override to redefine the item's idth. index: -1:return the default width of items; >=0:return the item's width this member will be called when IsEnableVaryItemWidth() is true
int UiList_H::CalcTotalItemsWidth | ( | ) |
获得所有项的宽度
virtual void UiList_H::DrawItem | ( | HDC | hdcDst, | |
int | nIndex, | |||
RECT * | prcItem, | |||
RECT * | prcWin, | |||
RECT * | prcUpdate | |||
) | [virtual] |
画某一项
void UiList_H::EnableGridlines | ( | bool | bEnable | ) |
显示分格线
void UiList_H::EnableUltraGridlines | ( | bool | bEnable | ) |
void UiList_H::EnableVaryItemWidth | ( | bool | bEnable | ) |
允许项的宽度不同
E_DOCK_MODE UiList_H::GetAutoDockMode | ( | ) |
RECT UiList_H::GetAutoSelectRect | ( | ) |
BOOL UiList_H::GetExtendedProperty_UiList_H | ( | int | nPropertyType, | |
void * | pValue, | |||
int | nBufSize | |||
) |
获取或设置对象的扩展属性值
nPropertyType | 要获取或设置的属性类型 | |
pValue | 要获取或设置的属性值的指针 | |
nBufSize | pValue所指向的变量的size大小(单位: 字节) |
int UiList_H::GetFirstVisibleItemIndex | ( | int & | nItemLeftPos, | |
RECT * | prcWin, | |||
RECT * | prcUpdate | |||
) |
获得第一个可见的项, 返回-1表示全部不可见
MZFC_INLINE COLORREF UiList_H::GetGridlineColor_GradientBottomLeft | ( | ) |
MZFC_INLINE COLORREF UiList_H::GetGridlineColor_GradientBottomrRight | ( | ) |
MZFC_INLINE COLORREF UiList_H::GetGridlineColor_GradientTopLeft | ( | ) |
MZFC_INLINE COLORREF UiList_H::GetGridlineColor_GradientTopRight | ( | ) |
ListItem* UiList_H::GetItem | ( | int | index | ) |
通过索引获得项
virtual int UiList_H::GetItemCount | ( | ) | [virtual] |
获得项总数
int UiList_H::GetItemWidth | ( | int | index | ) |
取得某一项宽度
int UiList_H::GetLeftPos | ( | ) |
重载UiWin。
int UiList_H::GetOriginOffset | ( | ) |
int UiList_H::GetSelectedIndex | ( | ) |
获得被选中项的索引,-1为无选中项
void UiList_H::InsertItem | ( | ListItem & | item, | |
int | nPos = -1 | |||
) |
插入项0-最前;1-最后
void UiList_H::InvalidateItem | ( | int | nIndex | ) |
invalidate an item's rect. nIndex: the index of the item, >=0
BOOL UiList_H::IsAutoSelect | ( | ) |
bool UiList_H::IsEnableVaryItemWidth | ( | ) |
获得是否允许宽度不同
bool UiList_H::IsGridlinesEnabled | ( | ) |
bool UiList_H::IsUltraGridlinesEnabled | ( | ) |
void UiList_H::MoveLeftPos | ( | int | nOffset | ) |
virtual int UiList_H::OnLButtonDown | ( | UINT | fwKeys, | |
int | xPos, | |||
int | yPos | |||
) | [virtual] |
mouse message handlers
重载UiWin。
virtual int UiList_H::OnLButtonUp | ( | UINT | fwKeys, | |
int | xPos, | |||
int | yPos | |||
) | [virtual] |
当控件被左键放开时,此函数会被调用.
重载UiWin。
virtual int UiList_H::OnMouseMove | ( | UINT | fwKeys, | |
int | xPos, | |||
int | yPos | |||
) | [virtual] |
当控件上鼠标移动时,此函数会被调用.
重载UiWin。
virtual void UiList_H::OnRemoveItem | ( | int | nIndex | ) | [virtual] |
项被删除前调用此函数
假如你重载了此函数,则必须在你的派生列表类的析构函数中调用RemoveAll(),这样才能保证OnRemoveItem被调用。
virtual void UiList_H::OnSelectItem | ( | int | nIndex, | |
UINT | fwKeys, | |||
int | xPos, | |||
int | yPos | |||
) | [virtual] |
当选中项时调用
virtual int UiList_H::OnTimer | ( | UINT_PTR | nIDEvent | ) | [virtual] |
当Timer到达时,此函数会被调用.
重载UiWin。
void UiList_H::PaintWin | ( | HDC | hdcDst, | |
RECT * | prcWin, | |||
RECT * | prcUpdate | |||
) | [virtual] |
绘制控件
重载此函数可以自定义控件的绘制
hdcDst | 目的DC | |
prcWin | 控件所在区域(以HDC的左上角为原点) | |
prcUpdate | 需要更新的区域(以HDC的左上角为原点) |
重载UiWin。
void UiList_H::RemoveAll | ( | ) |
删除所有项
void UiList_H::RemoveItem | ( | int | nIndex | ) |
移除项
void UiList_H::ScrollStart | ( | double | fScrollSpeed | ) | [virtual] |
开始滚动
重载UiWin。
void UiList_H::ScrollStop | ( | ) | [virtual] |
结束滚动
重载UiWin。
void UiList_H::ScrollTo | ( | int | nScrollToType = UI_SCROLLTO_TOP , |
|
int | nDstTopPos = 0 , |
|||
bool | bAnimate = true | |||
) | [virtual] |
滚动控件内容至某个位置
nScrollToType | UI_SCROLLTO_TOP, UI_SCROLLTO_BOTTOM, UI_SCROLLTO_POS | |
nDstTopPos | 目的位置,只当 nScrollToType==UI_SCROLLTO_POS 时有效 | |
bAnimate | 是否显示滚动过程 |
重载UiWin。
void UiList_H::SetAutoDockMode | ( | E_DOCK_MODE | nMode | ) |
void UiList_H::SetAutoSelect | ( | BOOL | bAuto | ) |
BOOL UiList_H::SetExtendedProperty_UiList_H | ( | int | nPropertyType, | |
void * | pValue, | |||
int | nBufSize | |||
) |
获取或设置对象的扩展属性值
nPropertyType | 要获取或设置的属性类型 | |
pValue | 要设置的属性值的指针 | |
nBufSize | pValue所指向的变量的size大小(单位: 字节) |
void UiList_H::SetGridlineColor_GradientBottomLeft | ( | COLORREF | clrGridline | ) |
set color of bottom the grid line's left gradient
void UiList_H::SetGridlineColor_GradientBottomRight | ( | COLORREF | clrGridline | ) |
set color of bottom the grid line's middle gradient
void UiList_H::SetGridlineColor_GradientTopLeft | ( | COLORREF | clrGridline | ) |
set color of top the grid line's left gradient
void UiList_H::SetGridlineColor_GradientTopRight | ( | COLORREF | clrGridline | ) |
set color of top the grid line's middle gradient
void UiList_H::SetItemWidth | ( | int | nWidth | ) |
设置某一项宽度
void UiList_H::SetLeftPos | ( | int | nLeftPos | ) |
void UiList_H::SetOriginOffset | ( | int | offset | ) |
the offset of the content top position to the control's origin
void UiList_H::SetSelectedIndex | ( | int | index | ) |
设置某项被选中,-1为没有项被选中
bool UiList_H::m_bEnableVaryItemWidth [protected] |
bool UiList_H::m_bIsDocked [protected] |
bool UiList_H::m_bIsEnableDragScroll [protected] |
重载UiWin。
bool UiList_H::m_bMouseDown [protected] |
E_DOCK_MODE UiList_H::m_eAutoDockMode [protected] |
int UiList_H::m_nDragMode [protected] |
重载UiWin。
int UiList_H::m_nItemWidth [protected] |
int UiList_H::m_nOriginOffset [protected] |
int UiList_H::m_nSelectedIndex [protected] |