问个白痴问题 怎么写打开和保存按钮? 我做了个对话框,现在要写个像正常的打开和保存按钮。现在我写的是按了就自动打开1.txt和保存到1.txt我想改成,点击按钮后,弹出那个选择文件的对话框,格式限制为txt点击选择,或者输入路径来打开或者保存。应该怎么写? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 OPENFILENAME结构,Petizold书里面chapter 11有介绍 是CFileDialog,详细可百度百科。 在你的按钮的响应函数中加入 static char BASED_CODE szFilter[] = "txt Files (*.txt)|*.txt||"; CFileDialog dlg(FALSE, ".txt", "", OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, szFilter, NULL);//保存文件对话框 if( dlg.DoModal() == IDOK ) str = dlg.GetPathName(); else return;或 static char BASED_CODE szFilter[] = "txt Files (*.txt)|*.txt||"; CFileDialog dlg(TRUE, ".txt", "", OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, szFilter, NULL);//打开文件对话框 if( dlg.DoModal() == IDOK ) str = dlg.GetPathName(); else return;即可 添加“打开”按钮,关联单击响应函数主要代码如下:CFileDialog *lpOpenFile;CString m_GetFilePath;lpOpenFile=new CFileDialog(TRUE,"","",OFN_FILEMUSTEXIST,"Data File(*.txt)|*.txt||"); if(lpOpenFile->DoModal()==IDOK) { Invalidate(true); UpdateWindow(); m_GetFilePath=lpOpenFile->GetPathName(); CStdioFile File; File.Open(m_GetFilePath,CFile::modeRead); delete lpOpenFile; WinExec,俺也是菜鸟,不过这个函数有打开的功能 vpn服务器如何管理用户信息? 关于客户区绘图存储的问题。 定义全局对象,是不是存贮在静态存储区呢?与静态变量一样? C/C++ 如何读取一个http或者ftp服务器上的文件内容(比如txt)? CListCtrl的问题 多个按钮共享Clicked事件后如何区分是点了哪一个按钮? 为什么我的下拉框不能实现下拉效果 我建了一个但文档,多视图的工程,但不知道在CMainFrame和视图见如何传递参数? 菜鸟请教各位,VC中如何写打印口? 一个网络编程问题 高分 用EnumWindows如何判断什么时候枚举完成所有的窗口 为什么deletefile和movefile失败?
static char BASED_CODE szFilter[] = "txt Files (*.txt)|*.txt||";
CFileDialog dlg(FALSE, ".txt", "", OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, szFilter, NULL);//保存文件对话框
if( dlg.DoModal() == IDOK )
str = dlg.GetPathName();
else
return;或
static char BASED_CODE szFilter[] = "txt Files (*.txt)|*.txt||";
CFileDialog dlg(TRUE, ".txt", "", OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, szFilter, NULL);//打开文件对话框
if( dlg.DoModal() == IDOK )
str = dlg.GetPathName();
else
return;
即可
主要代码如下:
CFileDialog *lpOpenFile;
CString m_GetFilePath;
lpOpenFile=new CFileDialog(TRUE,"","",OFN_FILEMUSTEXIST,"Data File(*.txt)|*.txt||");
if(lpOpenFile->DoModal()==IDOK)
{
Invalidate(true);
UpdateWindow();
m_GetFilePath=lpOpenFile->GetPathName();
CStdioFile File;
File.Open(m_GetFilePath,CFile::modeRead);
delete lpOpenFile;