码迷,mamicode.com
首页 > 其他好文 > 详细

listctrl调整表头高度

时间:2017-06-27 23:25:36      阅读:201      评论:0      收藏:0      [点我收藏+]

标签:logs   param   layout   eth   一个   listctrl   style   默认   log   

CListCtrl派生类下CMyListCtrl.h

class CMyListCtrl :public CListCtrl
{
    public:  
   // 设置表头高度
    void SetHeadHeight(float Height);
}



void CMyListCtrl::SetHeadHeight(float Height)
{
    m_Head.m_fHeight = Height;
}

CHeaderCtrl派生类CMyHeadCtrl插入HDM_LAYOUT消息

class CMyHeadCtrl :public CHeaderCtrl
{
    LRESULT OnLayout(WPARAM wParam, LPARAM lParam);
}

BEGIN_MESSAGE_MAP(CMyHeadCtrl, CHeaderCtrl)
     ON_MESSAGE(HDM_LAYOUT, OnLayout)
END_MESSAGE_MAP()

CMyHeadCtrl::CMyHeadCtrl() : 
{

    m_fHeight = 1.5;    //默认列头高度是一倍数
}

LRESULT CMyHeadCtrl::OnLayout(WPARAM wParam, LPARAM lParam)
{
    LRESULT lResult = CHeaderCtrl::DefWindowProc(HDM_LAYOUT, 0, lParam);
    HD_LAYOUT &hdl = *(HD_LAYOUT *)lParam;
    RECT *prc = hdl.prc;
    WINDOWPOS *pwpos = hdl.pwpos;

    //表头高度为原来1.5倍,如果要动态修改表头高度的话,将1.5设成一个全局变量 
    int nHeight = (int)(pwpos->cy * m_fHeight);
    pwpos->cy = nHeight;
    prc->top = nHeight;

    return lResult;
}

 

listctrl调整表头高度

标签:logs   param   layout   eth   一个   listctrl   style   默认   log   

原文地址:http://www.cnblogs.com/ye-ming/p/7087270.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!