Retrieving the column caption

This code snippet illustrates how to retrieve the column caption for any column of a listview. Basically this works by using the HDITEM structure and the listview's associated CHeaderCtrl object.

CString Caption; // will recieve the caption

// retrieve the header control see "The header control"
CHeaderCtrl* pHeader = (CHeaderCtrl*) m_listctrl.GetDlgItem(0);
int nMaxHeaderLength=100, // or whatever you need
    nColumnIndex;         // starts with zero, remember to initialize!

// fill the HDITEM structure
HDITEM HdItem;
HdItem.mask = HDI_TEXT; // just get the text
HdItem.pszText = Caption.GetBuffer(nMaxHeaderLength);
HdItem.cchTextMax = nMaxHeaderLength;

// retrieve the data
pHeader->GetItem(nColumnIndex, &HdItem);

// release the Buffer and finish
Caption.ReleaseBuffer();

TRACE("The caption of the Heading Number %i is :%s\n", nColumnIndex, Caption);



Comments

  • problem in getting the Caption of header control

    Posted by Legacy on 06/04/2001 12:00am

    Originally posted by: Sharat Joshi

    In the sample code given for getting the caption of Column clicked, the variable nColumnIndex in not initialized.
    If u initialize this variable to 0, the caption of first column will be displayed everytime u click the header of any column.

    Reply
Leave a Comment
  • Your email address will not be published. All fields are required.

Top White Papers and Webcasts

Most Popular Programming Stories

More for Developers

Latest Developer Headlines

RSS Feeds