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

  • At present, the most commonly deployed parallel file system is Lustre, and its adoption is growing across the HPC industry. According to Intersect 360 Research, "Through its leadership and involvement with OpenSFS, Cray advocates for the development of features that drive efficient performance at scale." Moreover, with help from Cray and OpenSFS, Lustre is gaining greater adoption across broader commercial application categories. As data and I/O requirements grow in commercial markets, technology vendors -- …

  • Migrating away from Windows Server 2003 is an investment in your organization's future, and there has never been a better time to begin the migration process. Take the next step to transform your datacenter by upgrading your server platform with leading edge Windows Operating Systems and SanDisk flash solutions.

Most Popular Programming Stories

More for Developers

RSS Feeds

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