Set focus on a cell

I wrote a small piece of code that would help select individual cells in a CListCtrl. This is not supported currently by the MFC.

When the user clicks on the cell in the CListCtrl it draws a rect. around that cell indicating that is the cell selected by the user. This might not be the best solution but a work around if anyone would like to use this.

//Individual cell selection in CLIstCtrl
CListCtrl::OnClick(...)
{
    int column;
    CRect m_rect;
    //the function below is provided in CListCtrl inPlace editing
    int index = GetRowColumnIndex(point, &column);
    if(index == -1)return;
    int offset = 0;
    for(int i = 0; i < column; i++)
      offset += GetColumnWidth(i);
    //Get the rectangle of the label and the icon
    GetItemRect(index, &m_rect, LVIR_BOUNDS);
    m_rect.left += offset + 4;
    //Get the columnWidth of the selected column
    m_rect.right = m_rect.left + GetColumnWidth(column);
    Update(index);
    CClientDC dc(this);    //this is the pointer of the current view
    dc.DrawFocusRect(m_rect);
}



Comments

  • Hover for Subitems

    Posted by Legacy on 08/12/2002 12:00am

    Originally posted by: Bharathy

    Does anyone know if there is hover selection for subitems?

    Reply
  • GetRowColumnIndex???

    Posted by Legacy on 05/02/2002 12:00am

    Originally posted by: Luke Clemens

    ummmm... where's that come from??

    Reply
  • What GetRowColumnIndex()????

    Posted by Legacy on 03/07/2002 12:00am

    Originally posted by: John

    There's no such function inside CListCtrl. Could you post the code if it's your custom function also?

    Reply
  • How to select and deselect individual cells?

    Posted by Legacy on 06/07/1999 12:00am

    Originally posted by: Srinivasu Achalla

    Your code is interesting but if you can provide code to select (the way items are selected) and deselct randomly clicked subitems, then it would be very good.

    Thanks in advance.

    Reply
  • A MFC version?

    Posted by Legacy on 05/12/1999 12:00am

    Originally posted by: xyjiang

    Does anyone have a MFC version of this?
    

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

Top White Papers and Webcasts

  • IBM Worklight is a mobile application development platform that lets you extend your business to mobile devices. It is designed to provide an open, comprehensive platform to build, run and manage HTML5, hybrid and native mobile apps.

  • Email is the most common communication vehicle used by organizations of all shapes and sizes. Among the billions of email messages sent every day are sensitive information, critical requests, and other essential business data. IT staff bear the burden of ensuring the confidentiality, integrity, and availability of the information contained within the communication. This white paper explores the email security landscape, an assessment of the threats organizations face,  and the building blocks of an effective …

Most Popular Programming Stories

More for Developers

Latest Developer Headlines

RSS Feeds