MFC LIST 获取行数和列数

时间:2021-10-24 14:31:30

DWORD dwStyle = dataListControl.GetExtendedStyle();
dwStyle |= LVS_EX_FULLROWSELECT;//选中某行使整行高亮(只适用与report风格的listctrl)
dwStyle |= LVS_EX_GRIDLINES;//网格线(只适用与report风格的listctrl)
//dwStyle |= LVS_EX_CHECKBOXES;//item前生成checkbox控件
dataListControl.SetExtendedStyle(dwStyle); //设置扩展风格
dataListControl.InsertColumn( 0, "Type", LVCFMT_LEFT, 100 );//插入列
dataListControl.InsertColumn( 1, "Name", LVCFMT_LEFT, 100 );
dataListControl.InsertItem(0, "int");//插入行
dataListControl.SetItemText(0, 1, "x");//设置数据
dataListControl.InsertItem(1, "float");//插入行
dataListControl.SetItemText(1, 1, "pi");//设置数据

DlgInputDataMember dlg;
if(dlg.DoModal()==IDOK)
{
int n = dataListControl.GetItemCount();//获取list里面有多少行
dataListControl.InsertItem(n, dlg.dataType);//插入行
dataListControl.SetItemText(n, 1, dlg.dataName);//设置数据
}

//获取选中的行
int r=dataListControl.GetSelectionMark();
if (dataListControl.GetSelectedCount()!=0)
dataListControl.DeleteItem(r);

int rows = dataListControl.GetItemCount();//行数
int cols = dataListControl.GetHeaderCtrl()->GetItemCount();//列数