list contrl控件的使用 1.建立基于对话框的应用程序,布置界面,设置属性。 注意添加的是listctrl控件,不是listbox控件,在控件工具箱的倒数第五行list control控件。 属性中设置styles标签中的查看属性为report,是一个多列列表显示。 2.设置控件变量 给列表控件添加一个CListCtrl类型的控件变量m_listctrl。 3. 设置列表控件的初始显示状态 在对话框的初始化函数中添加下列代码。 //在列表控件中添加五列,并设置每列的标题 //其中第一个参数为列号,第二个参数为列标题 m_listctrl.InsertColumn(0,"学号"); m_listctrl.InsertColumn(1,"姓名"); m_listctrl.InsertColumn(2,"性别"); m_listctrl.InsertColumn(3,"出生日期"); m_listctrl.InsertColumn(4,"专业"); //下面设置每列的宽度 RECT r; //定义一个矩形结构变量 m_listctrl.GetWindowRect(&r);//获取当前列表控件外观矩形,放在变量r中 int w=r.right-r.left; //求得列表框的宽度放在变量w中 //下面设置每列的宽度,第一个参数表示列号,第二个参数是当前列列宽 m_listctrl.SetColumnWidth(0,w/5); m_listctrl.SetColumnWidth(1,w/5); m_listctrl.SetColumnWidth(2,w/5); m_listctrl.SetColumnWidth(3,w/5); m_listctrl.SetColumnWidth(4,w/5); //下面从外在本工程文件夹下的studen.txt文件中读取所需要的记录信息 ifstream in("student.txt"); char buf[10]; int i=0; while(!in.eof()) { //将读取到的信息放到列表中显示 //先往列表中插入一行,第一个参数表示插入行的行号 m_listctrl.InsertItem(i,""); in>>buf; //读入第一项放在buf字符数组中 m_listctrl.SetItemText(i,0,buf);//显示在当前行的第0列 in>>buf; //读入下一项放在buf字符数组中 m_listctrl.SetItemText(i,1,buf);//显示在当前行的第1列 in>>buf; m_listctrl.SetItemText(i,2,buf); in>>buf; m_listctrl.SetItemText(i,3,buf); in>>buf; m_listctrl.SetItemText(i,4,buf); i++; }