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

  • Lenovo recommends Windows 8 Pro. "I dropped my laptop getting out of the taxi." This probably sounds familiar to most IT professionals. If your employees are traveling, you know their devices are in for a rough go. Whether it's a trip to the conference room or a convention out of town, any time equipment leaves a user's desk it is at risk of being put into harm's way. Stay connected at all times, whether at the office or on the go, with agile, durable, and flexible devices like the Lenovo® …

  • U.S. companies are desperately trying to recruit and hire skilled software engineers and developers, but there is simply not enough quality talent to go around. Tiempo Development is a nearshore software development company. Our headquarters are in AZ, but we are a pioneer and leader in outsourcing to Mexico, based on our three software development centers there. We have a proven process and we are experts at providing our customers with powerful solutions. We transform ideas into reality.

Most Popular Programming Stories

More for Developers

RSS Feeds

Thanks for your registration, follow us on our social networks to keep up-to-date