C++ 检索CListCtrl中的选定行
我有一个C++ 检索CListCtrl中的选定行,c++,clistctrl,C++,Clistctrl,我有一个CListCtrl,其中有两列和多行。我想获取所选行的索引。当用户单击第一列时,我能够获取行,但当单击第二列时,我无法获取行 有什么建议吗?调用m_ListCtrl.SetExtendedStyle(LVS_EX_FULLROWSELECT)创建控件后-通常在OnInitDialog中,我们有一个对话框,其中一个CListCtrl对象定义在RC文件中,如下所示: IDD_DIALOG DIALOGEX 0, 0, 435, 273 STYLE DS_SETFONT | DS_MODALF
CListCtrl
,其中有两列和多行。我想获取所选行的索引。当用户单击第一列时,我能够获取行,但当单击第二列时,我无法获取行
有什么建议吗?调用
m_ListCtrl.SetExtendedStyle(LVS_EX_FULLROWSELECT)
创建控件后-通常在OnInitDialog
中,我们有一个对话框,其中一个CListCtrl对象定义在RC文件中,如下所示:
IDD_DIALOG DIALOGEX 0, 0, 435, 273
STYLE DS_SETFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "A Dialog :)"
FONT 12, "Microsoft Sans Serif", 400, 0, 0xEE
BEGIN
CONTROL "",IDC_LIST_CONTROL,"SysListView32",LVS_REPORT | LVS_OWNERDRAWFIXED | LVS_ALIGNLEFT | WS_BORDER,5,138,350,86
END
IDD_对话框EX0、0435273
样式DS|u SETFONT | DS|u MODALFRAME | WS|u弹出| WS|u字幕| WS|u系统菜单
标题“对话:)”
字体12,“Microsoft无衬线”,400,0,0xEE
开始
控件“”,IDC_列表_控件,“SysListView32”,LVS_报告| LVS_所有者绘制固定| LVS_左对齐| WS_边框,5138350,86
结束
然后CListCtrl对象IDC_LIST_控件的行为就像一个LVS_报告,这意味着
单击其中任何一列将选择整行
然后检索所选行,如下所示:
IDD_DIALOG DIALOGEX 0, 0, 435, 273
STYLE DS_SETFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "A Dialog :)"
FONT 12, "Microsoft Sans Serif", 400, 0, 0xEE
BEGIN
CONTROL "",IDC_LIST_CONTROL,"SysListView32",LVS_REPORT | LVS_OWNERDRAWFIXED | LVS_ALIGNLEFT | WS_BORDER,5,138,350,86
END
int selectedRow=((CListCtrl*)GetDlgItem(IDC_列表_控件))->GetSelectionMark()