如何设置CListCtrl的行高???

解决方案 »

  1.   

    一般插入空的Image就行了,控制Image的高度
      

  2.   

    完全自绘或是通过设置字体,可以修改ListCtrl的行高,看一下这篇介绍http://www.codeguru.com/cpp/controls/listview/advanced/article.php/c1013/
      

  3.   

    http://community.csdn.net/Expert/topic/4886/4886749.xml?temp=3.414333E-03
    类似问题
      

  4.   

    如果单纯为了控制行高的话
    http://community.csdn.net/Expert/topic/4886/4886749.xml?temp=3.414333E-03
    中的
    m_image.Create(16, 16, ILC_COLOR16, 1, 1); 
    应改为
    m_imageList.Create(1, 16, ILC_MASK, 1, 1); 用ILC_COLOR16类型插入的纯背景色图标会被显示成黑色,用ILC_MASK类型则符合要求。查了一下我的《Visual C++ 6.0 类参考详解》,在CImageList::Create的说明中,nFlags指定要创建图象列表的类型。此参数可以是下列值的组合,但其中只能有一个ILC_COLOR值。晕,找了半天也没找到所谓的“下列值”,什么烂书呀!!!搜索ILC_COLOR,在CommCtrl.h中发现了下列定义:
    #define ILC_MASK                0x00000001
    #define ILC_COLOR               0x00000000
    #define ILC_COLORDDB            0x000000FE
    #define ILC_COLOR4              0x00000004
    #define ILC_COLOR8              0x00000008
    #define ILC_COLOR16             0x00000010
    #define ILC_COLOR24             0x00000018
    #define ILC_COLOR32             0x00000020
    #define ILC_PALETTE             0x00000800      // (not implemented)谁能告诉我这些是全部nFlags允许的“下列值”吗???这些类型值各起什么作用???
      

  5.   

    不用太多,加这点代码,就行了
    CImageList img;
    img.Create(1, 18, ILC_COLOR8|ILC_MASK,2,2);
    img.Add(AfxGetApp()->LoadIcon(IDR_MAINFRAME));
    m_list.SetImageList(&img,LVSIL_SMALL);