温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

ListCtrl表格的用法

发布时间:2020-07-11 10:17:19 来源:网络 阅读:1174 作者:Chinayu2014 栏目:编程语言
BOOL CScale3DCTempTableDlg::OnInitDialog()
{
	CDialogEx::OnInitDialog();

	// TODO:  在此添加额外的初始化
	m_listTempTable.InsertColumn(0, _T("磅单流水号"), LVCFMT_CENTER, 100);
	m_listTempTable.InsertColumn(1, _T("车号"), LVCFMT_CENTER, 100);
	m_listTempTable.InsertColumn(2, _T("发货单位"), LVCFMT_CENTER, 100);

	LONG lStyle;
	lStyle = GetWindowLong(m_listTempTable.m_hWnd, GWL_STYLE);
	// lStyle &= ~LVS_TYPEMASK;//清除显示方式位
	lStyle |= LVS_REPORT;//设置为报告风格
	SetWindowLong(m_listTempTable.m_hWnd, GWL_STYLE, lStyle);
	
	//设置扩展风格,整行选择,网格线,前面有检查框
	//m_listTempTable.SetExtendedStyle(LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES|
	                                   LVS_EX_CHECKBOXES);
	DWORD dwStyle = m_listTempTable.GetExtendedStyle();
	dwStyle |= LVS_EX_FULLROWSELECT;//选中某行使整行高亮(只适用与report风格的listctrl)
	dwStyle |= LVS_EX_GRIDLINES;//网格线(只适用与report风格的listctrl)
	dwStyle |= LVS_EX_CHECKBOXES;//item前生成checkbox控件
	m_listTempTable.SetExtendedStyle(dwStyle); //设置扩展

	return TRUE;  
}

按行写入数据

m_listTempTable.InsertItem(0, _T("20180516-000001"));
m_listTempTable.SetItemText(0, 1, _T("浙B62917"));
m_listTempTable.SetItemText(0, 2, _T("大米公司"));
m_listTempTable.SetItemText(0, 3, _T("大理段氏"));

右键菜单

void CScale3DCTempTableDlg::OnNMRClickListTable(NMHDR *pNMHDR, LRESULT *pResult)
{
	LPNMITEMACTIVATE pNMItemActivate = reinterpret_cast<LPNMITEMACTIVATE>(pNMHDR);
	// TODO: 在此添加控件通知处理程序代码
	POINT pt;
	GetCursorPos(&pt);
	int x = m_listTempTable.GetSelectionMark();
	TRACE(_T("%d\n"), x);

	CMenu menu;
	menu.LoadMenu(IDR_MENU_TEMP_TABLE);
	CMenu * pPopup = menu.GetSubMenu(0);
	ScreenToClient(&pt);

   CRect rt;
   this->GetWindowRect(rt);

	pPopup->TrackPopupMenu(TPM_RIGHTBUTTON| TPM_RIGHTBUTTON, 
	        pt.x+rt.left,rt.top+ pt.y, this);
	*pResult = 0;
}


向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI