list control控件

本文介绍了如何在C++中使用CListCtrl控件。首先,通过声明CListCtrl类型的成员变量m_ClassList来创建控件。接着,详细讲解了如何实际创建和设置list control,包括添加列和项的操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、为list control控件添加变量

       CListCtrl m_ClassList;

2、创建list control

// 获取编程语言列表视图控件的位置和大小   
m_ClassList.GetClientRect(&rect);
// 为列表视图控件添加全行选中和栅格风格   
m_ClassList.SetExtendedStyle(m_ClassList.GetExtendedStyle() | LVS_EX_FULLROWSELECT | LVS_EX_GRIDLINES);
// 为列表视图控件添加5列   
m_ClassList.InsertColumn(0, _T("NO."), LVCFMT_CENTER, rect.Width() / 5, 0);
m_ClassList.InsertColumn(1, _T("Date"), LVCFMT_CENTER, rect.Width() / 5, 1;
m_ClassList.InsertColumn(2, _T("Time"), LVCFMT_CENTER, rect.Width() / 5, 2);
m_ClassList.InsertColumn(3, _T("Students"), LVCFMT_CENTER, rect.Width() / 5, 3);
m_ClassList.InsertColumn(4, _T("Lessons"), LVCFMT_CENTER, rect.Width() /5, 4);
	
m_ClassList.InsertItem(0, "1");
m_ClassList.SetItemText(0, 1, "2017-4-10");
m_ClassList.SetItemText(0, 2, "10:00");
m_ClassList.SetItemText(0, 3, "Tom");
m_ClassList.SetItemText(0, 4, "English");
3、鼠标单击list control上某项,获取某行数据

//消息映射
ON_NOTIFY(NM_CLICK, IDC_LIST_CLASS, &CMFCSeerDlg::OnNMClickListClass)
//函数声明
afx_msg void OnNMClickListClass(NMHDR *pNMHDR, LRESULT *pResult);
//函数实现
void CMFCSeerDlg::OnNMClickListClass(NMHDR *pNMHDR, LRESULT *pResult)
{ 
    LPNMITEMACTIVATE pNMItemActivate = reinterpret_cast(pNMHDR);
	// TODO: Add your control notification handler code here
	*pResult = 0;
	//CString strLangName;    // 选择语言的名称字符串   
	NMLISTVIEW *pNMListView = (NMLISTVIEW*)pNMHDR;

	if (-1 != pNMListView->iItem)        // 如果iItem不是-1,就说明有列表项被选择   
	{
		// 获取被选择列表项第一个子项的文本   
		strNumber = m_ClassList.GetItemText(pNMListView->iItem, 0);
	}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值