(一)List Control控件的使用
新近开发了一个摄像机标定的MFC程序,标定完成后期望将求得的摄像机参数直观地显示到应用程序的界面上来。起初的方案是为每一个参数都建立一个Edit控件,并对每一个控件设定一个控制变量,将该变量与相应参数对应起来。这样做是可行的,但当参数众多时比较繁琐。鉴于此,决定在程序中使用List Control控件,将参数以List的形式呈现在界面上。以下是我在基于对话框的MFC程序中添加List Control控件的步骤。
1.新加ListControl 控件,属性中的style属性页下的View选择Report。并设置其对应的控制变量如:m_ListCtrl。
2.初始化,即设置列。
m_ListCtrl.InsertColumn(0,"参数名"); //插入列
m_ListCtrl.InsertColumn(1,"参数值");
m_ListCtrl.InsertColumn(2,"备注");
CRect rect3;
m_ListCtrl.GetClientRect(rect3); //获得当前客户区信息
m_ListCtrl.SetColumnWidth(0,rect3.Width()/4); //设置列的宽度。
m_ListCtrl.SetColumnWidth(1,rect3.Width()*2/4);
m_ListCtrl.SetColumnWidth(2,rect3.Width()/4);
这部分初始化操作,最好放在对话框类的OnInitDialog()函数里,自动初始化。
3.插入数据
m_ListCtrl.InsertItem(0,"参数1"); //插入第一个数据,即第0条数据。先插入,然后在修改其他的信息。
m_ListCtrl.SetItemText(0,1,"参数1值"); //修改第0条数据的其他信息。
m_ListCtrl.SetItemText(0,2,"无");
SetItemText()函数负责向列表里添加字符串。当需要添加的是非字符串的数据类型时,需要先转换为字符串类型再用SetItemText()完成添加。假设所需要添加的是double类型的浮点数。
double dbl=1.2345678;
char str[16]={0};
sprintf(str, "%lf", dbl);

本文介绍了如何在MFC程序中使用List Control控件展示摄像机参数,并详细讲解了控件的初始化、插入数据、删除数据和设置全行选择的方法。同时,文章还展示了如何通过SetTimer和OnTimer函数实现在Edit控件中实时更新系统时间。
最低0.47元/天 解锁文章
1万+

被折叠的 条评论
为什么被折叠?



