我如何 select CListCtrlEx 中的整行
How do I select an entire row in a CListCtrlEx
为了在 CListCtrlEx
中的其中一行填充数据后自动 select 应该做什么。
目的是 select 显示 CListCtrlEx
时的默认行。例如,如果显示的数据是城市列表,要显示其中一个城市(可能是之前 selected 的城市),下次显示控件时默认 selected。
假设 m_MyList
是对话框的一部分,我们将以下行添加到 OnInitDialog()
并且我们想要 select 第一行:
m_MyList.SendMessage(LVM_SETEXTENDEDLISTVIEWSTYLE, 0, LVS_EX_GRIDLINES | LVS_EX_FULLROWSELECT);
m_MyList.SetItemState(0, LVIS_SELECTED | LVIS_FOCUSED, LVIS_SELECTED | LVIS_FOCUSED);
m_MyList.SetFocus();
return FALSE; // return TRUE unless you set the focus to a control
不要忘记更改默认值
return TRUE;
到
return FALSE;
为了在 CListCtrlEx
中的其中一行填充数据后自动 select 应该做什么。
目的是 select 显示 CListCtrlEx
时的默认行。例如,如果显示的数据是城市列表,要显示其中一个城市(可能是之前 selected 的城市),下次显示控件时默认 selected。
假设 m_MyList
是对话框的一部分,我们将以下行添加到 OnInitDialog()
并且我们想要 select 第一行:
m_MyList.SendMessage(LVM_SETEXTENDEDLISTVIEWSTYLE, 0, LVS_EX_GRIDLINES | LVS_EX_FULLROWSELECT);
m_MyList.SetItemState(0, LVIS_SELECTED | LVIS_FOCUSED, LVIS_SELECTED | LVIS_FOCUSED);
m_MyList.SetFocus();
return FALSE; // return TRUE unless you set the focus to a control
不要忘记更改默认值
return TRUE;
到
return FALSE;