如何用自己设计的open或save对话框?如何在vc6中用word2000式的open和save对话框?
解决方案 »
- 360安全卫士界面的效果是怎么做出来的?
- vs2010定义下面的宏怎么不行?//#if (int)sizeof(int) == 4
- 招聘:ActiveX技术工程师
- 用VC写的一个串口通讯程序,在win2000下可以,在win98下程序很容易死机,要杀进程才行
- 怎样实现自定义的打印预览视图。
- 菜鸟问题: 怎样禁用CDialog右上角的关闭按钮?
- VC可以干什么?开发数据库的好书???..........?
- 怎么使 动态创建的radiobutton 有效 急急!!!!
- 哪位大侠介绍一下用 installshield 做安装程序吧 (我很菜)!
- 我是新手,能告诉我学习VC++应该从那入手,怎么一步一步的学,谢谢!!!!!!
- 有图像处理和识别项目作,有报酬啦!!!
- VC中怎样使工具栏的手柄区有两条坚(横)线,通常只有一条,再有如何在工具栏上加上其它控件呢?(初学者)
{
// TODO: Add your command handler code here
BeginWaitCursor();
static char BASED_CODE szSaveFilter[] =
"数据文件(*.rev)|*.rev|文本文件(*.txt)|*.txt|||";
CFileDialog FileDlg(FALSE, "rev", NULL, OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, szSaveFilter);
if (FileDlg.DoModal() == IDOK)
{
UpdateAllViews(NULL);
SetModifiedFlag(FALSE);
lpszName=FileDlg.m_ofn.lpstrFile;
OnSaveDocument(lpszName);
SetPathName(lpszName,TRUE);
m_nFileSty=FileDlg.m_ofn.nFilterIndex;
}
EndWaitCursor();
}
void MMDoc::OnFileOpen()
{
// TODO: Add your command handler code here static char BASED_CODE szOpenFilter[] =
"数据文件(*.rev)|*.rev|文本文件(*.txt)|*.txt|其他数据文件(*.dat;*.raw)|*.dat;*.raw|所有文件(*.*)|*.*||";
CFileDialog FileDlg(TRUE, "*.txt", NULL, OFN_HIDEREADONLY | OFN_FILEMUSTEXIST|OFN_ENABLESIZING, szOpenFilter); if (FileDlg.DoModal() != IDOK) return; m_nFileSty=FileDlg.m_ofn.nFilterIndex;
lpszName=FileDlg.m_ofn.lpstrFile;
OnOpenDocument(lpszName);
SetPathName(lpszName,TRUE);
}
static char szFile[255]="";
static char szFileTitle[255];memset(&ofn,0,sizeof(ofn));
ofn.lStructSize=sizeof(ofn);
ofn.hwndOwner=GetSafeHwnd();
ofn.lpstrFilter="日志文件\0*.log\0\0";
ofn.nFilterIndex=0;
ofn.lpstrFile=szFile;
ofn.nMaxFile=sizeof(szFile);
ofn.lpstrFileTitle=szFileTitle;
ofn.nMaxFileTitle=sizeof(szFileTitle);
ofn.Flags=OFN_PATHMUSTEXIST|OFN_FILEMUSTEXIST|OFN_EXPLORER|OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT;GetOpenFileName(&ofn)
http://www.codeproject.com/dialog/customize_dialog.asp
http://www.codeproject.com/dialog/selectfolder.asp
你们说的都不通用对话框吗??
static char szFile[255]="";
static char szFileTitle[255];memset(&ofn,0,sizeof(ofn));
ofn.lStructSize=sizeof(ofn);
ofn.hwndOwner=GetSafeHwnd();
ofn.lpstrFilter="日志文件\0*.log\0\0";
ofn.nFilterIndex=0;
ofn.lpstrFile=szFile;
ofn.nMaxFile=sizeof(szFile);
ofn.lpstrFileTitle=szFileTitle;
ofn.nMaxFileTitle=sizeof(szFileTitle);
ofn.Flags=OFN_EXPLORER|OFN_PATHMUSTEXIST|OFN_FILEMUSTEXIST|OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT;GetOpenFileName(&ofn);在Flags标志中加入OFN_EXPLORER就能生成win2000样式的对话框,你试一下吧~~
如果直接调用API函数,在98下是98的样式,在2000下是2000的样式