字体
第(1/5)页
关灯
   存书签 书架管理 返回目录
    的顶端还可以显示一个列表头用来说明各列的类型。列表视图

    的报告格式很适合显示报表(如数据库报表)。

    典型的列表控件的格式如图5-7 所示。

    图5-7 ClistCtrl 控件形式样例

    在讨论如何使用列表视图控件以前,先向读者介绍一下与该控件有关的一些数据类型。

    1.LV_COLUMN 结构

    该结构仅用于报告式列表视图,用来描述表项的某一列。要想向表项中chā入新的一列,

    需要用到该结构。LV_COLUMN 结构的定义为:

    typedef struct _LV_COLUMN{

    UINT mask;

    //屏蔽位的组合(见下面括号),表明哪些成员是有效的

    int fmt;

    //该列的表头和子项的标题显示格式(LVCF_FMT)。可以是LVCFMT_CENTER、LVCFMT_LEFT

    //或LVCFMT_RIGHT

    int cx; //以像素为单位的列的宽度(LVCF_FMT)

    LPTSTR pszText; //指向存放列表头标题正文的缓冲区(LVCF_TEXT)

    int cchTextMax; //标题正文缓冲区的长度(LVCF_TEXT)

    int iSubItem; //说明该列的索引(LVCF_SUBITEM)

    }LV_COLUMN;

    枫叶文学网www.fywxw.com

    第5 章 常用控件

    ·131·

    2.LV_ITEM 结构

    该结构用来描述一个表项或子项,它包含了项的各种属xìng,其定义为如下:

    typedef struct _LV_ITEM {

    UINT mask;

    //屏蔽位的组合(见下面括号),表明哪些成员是有效的

    int iItem;

    //从0 开始编号的表项索引(行索引)

    int iSubItem;

    //从1 开始编号的子项索引(列索引),若值为0 则说明该成员无效,结构描述的是一个表项而不

    是子项

    UINT state;

    //项的状态(LVIF_STATE)

    UINT stateMask;

    //项的状态屏蔽

    LPTSTR pszText;

    //指向存放项的正文的缓冲区(LVIF_TEXT)

    int cchTextMax;

    //正文缓冲区的长度(LVIF_TEXT)

    int iImage;

    //图标的索引(LVIF_IMAGE)

    LPARAM lParam;

    //32 位的附加数据(LVIF_PARAM)

    }LV_ITEM;

    其中lParam 成员可用来存储与项相关的数据,这在有些情况下是很有用的。state 和

    stateMask 的值如表5-19 所示,stateMask 用来说明要获取或设置哪些状态。

    表5-19 列表视图的状态

    状态 对应的状态屏蔽 含义

    LVIS_CUT 同左 项被选择用来进行剪切和粘贴cāo作

    LVIS_D
上一章 目录 下一页