工控编程吧
标题:
46上位机VC MFC实现同时加载多文件
[打印本页]
作者:
qq263946146
时间:
2015-11-28 21:34
标题:
46上位机VC MFC实现同时加载多文件
(, 下载次数: 0)
上传
点击文件名下载附件
46上位机VC MFC实现同时加载多文件
功能展示
有时我们上位机程序想要一次性加载多个参数文件,方便用户的操作,默认情况下,只能一个个的加载。我们当前就实现文件同时加载功能,效果如图
要点提示
我们打开文件用MFC自带的文件对话框类来实现CFileDialog;在使用这个封装的类进行文件打开操作时,如果要实现多个文件一起打开,就需要在构造这个类时设置它的属性包含OFN_ALLOWMULTISELECT风格;我们当前的构造函数具体如下CFileDialogdlg(TRUE,NULL,NULL,OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT|OFN_ALLOWMULTISELECT,"gkbc8文件|*.gkbc8*|AllFiles(*.*)|*.*||",AfxGetMainWnd()); //构造文件打开对话框
实现功能
1.新建基于对话框的应用程序
2.添加一个CListBox控件用来显示一次性打开的多个文件名,添加了个按钮及其响应函数实现多文件的加载;
void CGkbc8Dlg::OnOpen()
{
// TODO: Add your control notification handler code here
CFileDialog dlg(TRUE,NULL,NULL,OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT
|OFN_ALLOWMULTISELECT,"gkbc8文件|*.gkbc8*|All Files(*.*)|*.*||",AfxGetMainWnd()); //构造文件打开对话框
CString strPath=""; //声明变量
if(dlg.DoModal() == IDOK) //判断是否按下"打开"按钮
{
POSITION m_Position = dlg.GetStartPosition();
while(m_Position != NULL)
{
strPath = dlg.GetNextPathName(m_Position);
m_List.InsertString(m_List.GetCount(),strPath);
}
}
}
复制代码
3.为了显示方便,我们给CListBox控件关联一变量CListBox m_List;可能加载的文件路径会很长,我们再给CListBox控件设置一下水平滚动条;m_List.SendMessage(LB_SETHORIZONTALEXTENT ,1024,0);
我们来演示整个功能实现的过程
[iqiyi]http://player.video.qiyi.com/f323fa06191d640736a4f4dfe64d7b63/0/0/w_19rt9vt109.swf-albumId=4954528309-tvId=4954528309-isPurchase=0-cnId=12[/iqiyi]
源码及视频下载
(仅在电脑可见)
(, 下载次数: 1)
上传
点击文件名下载附件
[note]1[/note]
欢迎光临 工控编程吧 (https://www.gkbc8.com/)
Powered by Discuz! X3.4