一、设置listcontrol
设置listcontrol列名(字体大小和行高),m_SaleList 为列表的名称
// List Control 页面设置
m_SaleList.SetExtendedStyle(LVS_EX_FULLROWSELECT | LVS_EX_GRIDLINES); // 整行选择、网格线
m_SaleList.InsertColumn(0, _T("第一列"), LVCFMT_LEFT, 200); // 插入第1列的列名
m_SaleList.InsertColumn(1, _T("第二列"), LVCFMT_LEFT, 150); // 插入第2列的列名
m_SaleList.InsertColumn(2, _T("第三列"), LVCFMT_LEFT, 300); // 插入第3列的列名
m_SaleList.InsertColumn(3, _T("第四列"), LVCFMT_LEFT, 180); // 插入第4列的列名
m_SaleList.InsertColumn(4, _T("第五列"), LVCFMT_LEFT, 150); // 插入第5列的列名
m_SaleList.InsertColumn(5, _T("第六列"), LVCFMT_LEFT, 150); // 插入第6列的列名
m_SaleList.InsertColumn(6, _T("第七列"), LVCFMT_LEFT, 150); // 插入第7列的列名
m_SaleList.InsertColumn(7, _T("第八列"), LVCFMT_LEFT, 150); // 插入第8列的列名
//设置行高
CImageList m_l;
m_l.Create(1, 25, TRUE | ILC_COLOR32, 1, 0); //设置表格的高度
m_SaleList.SetImageList(&m_l, LVSIL_SMALL);
//设置字体
CFont m_font;
m_font.CreatePointFont(180, "新宋体"); //设置标题栏的高度及字体
m_SaleList.SetFont(&m_font);
单独设置列宽还可用下列方式
m_SaleList.SetColumnWidth(0, 120); //设置列宽
m_SaleList.SetColumnWidth(1, 120);
m_SaleList.SetColumnWidth(2, 120);
m_SaleList.SetColumnWidth(3, 120);
m_SaleList.SetColumnWidth(4, 120);
m_SaleList.SetColumnWidth(5, 120);
m_SaleList.SetColumnWidth(6, 120);
二、点击button后不关闭窗口
比如:给button添加处理事件,为函数OnBnClickedOk(),在函数内注释掉以下这一行代码
CDialogEx::OnOK(); //点击按钮后关闭页面
void Sale_Reception::OnBnClickedOk() //结算:将列表中的商品记录到数据库中
{
// TODO: 在此添加控件通知处理程序代码
//CDialogEx::OnOK(); //点击按钮后关闭页面
}
三、用delete键来删除列表list的某一行
点击列表,添加事件处理程序OnKeydown
//delete键来删除列表的某一行
void Sale_Reception::OnKeydownList3_delete(NMHDR* pNMHDR, LRESULT* pResult)
{
LPNMLVKEYDOWN pLVKeyDow = reinterpret_cast<LPNMLVKEYDOWN>(pNMHDR);
// TODO: 在此添加控件通知处理程序代码
if (VK_DELETE) {
int nItem = m_SaleList.GetSelectionMark();
m_SaleList.DeleteItem(nItem);
*pResult = 0;
}
}