Click here to Skip to main content
15,884,298 members
Articles / Desktop Programming / MFC

Autosize ListCtrl Header

Rate me:
Please Sign up or sign in to vote.
4.87/5 (18 votes)
19 Apr 2007CPOL4 min read 84.7K   1.4K   45  
Autosize the last column of a list control's header. But there is a catch...
#pragma once
#include <afxtempl.h>

// CMyListCtrl

typedef CMap<int,int,double,double>  CFillPercentMap;
class CMyListCtrl : public CListCtrl
{
	DECLARE_DYNAMIC(CMyListCtrl)

public:
	CMyListCtrl();
	virtual ~CMyListCtrl();

   void InsertColumnEx(int nCol,const LVCOLUMN* pColumn,double FillPrecent);
   void InsertColumnEx(int nCol,LPCTSTR lpszColumnHeading,int nFormat = LVCFMT_LEFT,double FillPercent = -1,int nSubItem = -1);

   void AutoSizeColumn();

protected:
	afx_msg void OnSize(UINT nType, int cx, int cy);
   afx_msg LRESULT OnResizeMe(WPARAM,LPARAM);
   afx_msg void OnHdnEndtrack(NMHDR *pNMHDR, LRESULT *pResult);
   DECLARE_MESSAGE_MAP()
};


By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.

If a file you wish to view isn't highlighted, and is a text file (not binary), please let us know and we'll add colourisation support for it.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


Written By
Architect
United States United States
Ali Rafiee has been developing windows applications using C++ since 1991, and he hasn't looked back since. Ali has been a software development consultant for must of his career, but he has finally settled down and has been working for an educational software company since 2000. While he is not working, he is either learning C#, flying airplanes, playing with his daughter, or answering peoples question on newsgroups, he finds that to be a great learning tool for himself.

Ali is also a Microsoft Visual C++ MVP.

Comments and Discussions