List Control是MFC中经常用到的控件,但是可惜该控件并不支持键盘输入、添加各种控件(Button、ComboBox...)等功能,说白了基本功能就是一个用于显示数据的表格性质控件。那么,对于键盘输入的支持以及控件的添加等功能具体如何实现,在下文中一一详述。
一、基本的使用
1.初始化风格
对于style的(报表风格、单选模式等)设置;对于ExtendedStyle(网格添加、item前添加check box等)的设置;例:
对于一个关联变量为m_Errorlist的List Control初始化:
LONG lStyle;
lStyle = GetWindowLong(m_Errorlist.m_hWnd, GWL_STYLE);//获取当前窗口style
lStyle &= ~LVS_TYPEMASK; //清除显示方式位
lStyle |= LVS_REPORT; //设置style
lStyle |= LVS_SINGLESEL;//单选模式
SetWindowLong(m_Errorlist.m_hWnd, GWL_STYLE, lStyle);//设置style
DWORD dwStyle = m_Errorlist.GetExtendedStyle();
dwStyle |= LVS_EX_FULLROWSELECT;//选中某行使整行高亮(只适用与report风格的listctrl)
dwStyle |= LVS_EX_GRIDLINES;//网格线(只适用与report风格的listctrl)
dwStyle |= LVS_EX_CHECKBOXES;//item前生成checkbox控件
m_Errorlist.SetExtendedStyle(dwStyle); //设置扩展风格
2.插入列、行
插入列:参数分别为(列位置0、列标题为Amp Enable、位置居中、列宽