工控编程吧
标题:
45上位机VC MFC新型的打开文件对话框
[打印本页]
作者:
qq263946146
时间:
2015-11-28 21:29
标题:
45上位机VC MFC新型的打开文件对话框
(, 下载次数: 1)
上传
点击文件名下载附件
45上位机VC MFC新型的打开文件对话框
功能展示
我们在最新的操作系统中操作软件时,进行文件打开操作时,弹出的操作窗口具有非常方便的快捷的功能,界面也美观,那么我们如何在自己的上位机程序加载参数文件时,也用上这一新型的对话框窗口呢?我们当前来实现这一应用,效果如图
要点提示
实现新型的文件打开对话框窗口我们可使用GetOpenFileName()函数,此函数跟随一个结构体OPENFILENAME。在使用GetOpenFileName函数前就得定义这一结构体,并对这一结构体内成员进行功能选择性设置; 如我们当前例程的设置实现了参数文件的打开;OPENFILENAME ofn = { 0 };
ofn.lStructSize = sizeof(ofn);
ofn.lpstrFilter = "gkbc8文件\0*.gkbc8*\0AllFiles(*.*)\0*.*\0\0";//要选择的文件后缀
ofn.lpstrInitialDir ="D:\\";//默认的文件路径
ofn.lpstrFile = szBuffer;//存放文件的缓冲区
ofn.nMaxFile = sizeof(szBuffer) /sizeof(*szBuffer);
ofn.nFilterIndex = 0;
ofn.Flags =OFN_PATHMUSTEXIST | OFN_FILEMUSTEXIST | OFN_EXPLORER;
实现功能
1.新建基于对话框的应用程序
2.添加一个按钮实现新型对话框的加载,添加一个编辑框,用于显示加载的文件内容
3.然后在按钮的实现函数内实现新型对话框的加载功能
void CGkbc8Dlg::OnOpen()
{
char szBuffer[1024] = { 0 };
OPENFILENAME ofn = { 0 };
ofn.lStructSize = sizeof(ofn);
ofn.lpstrFilter = "gkbc8文件\0*.gkbc8*\0All Files(*.*)\0*.*\0\0";//要选择的文件后缀
ofn.lpstrInitialDir = "D:\";//默认的文件路径
ofn.lpstrFile = szBuffer;//存放文件的缓冲区
ofn.nMaxFile = sizeof(szBuffer) / sizeof(*szBuffer);
ofn.nFilterIndex = 0;
ofn.Flags = OFN_PATHMUSTEXIST | OFN_FILEMUSTEXIST | OFN_EXPLORER;//标志如果是多选要加上OFN_ALLOWMULTISELECT
if(GetOpenFileName(&ofn) )//用户选择了文件且点击确认按钮时返回非0值
{
CString str;
CFile mFile;
if(mFile.Open(szBuffer,CFile::modeRead)==0)
return;
mFile.Read(str.GetBuffer(mFile.GetLength()),mFile.GetLength());
str.ReleaseBuffer();
mFile.Close();
SetDlgItemText(IDC_EDIT1,str);
}
复制代码
我们来演示下功能实现的整个过程
[iqiyi]http://player.video.qiyi.com/0b31790b4f4bf22b74d0456756377392/0/0/w_19rt9vrh2p.swf-albumId=4954588509-tvId=4954588509-isPurchase=0-cnId=12[/iqiyi]
源码及视频下载
(仅在电脑可见)
(, 下载次数: 1)
上传
点击文件名下载附件
[note]1[/note]
欢迎光临 工控编程吧 (https://www.gkbc8.com/)
Powered by Discuz! X3.4