初学者问一个关于 文件选择对话框 的问题

cn_martian 2005-10-17 01:58:55
我新建了一个多文档应用程序,想限定该程序只能打开.bmp文件,但系统自动产生的打开文件对话框的文件类型选项里包含了“所有文件(*.*)”,请问能否打这个去掉,而只显示“图片(*.bmp)”?
...全文
175 点赞 收藏 16
写回复
16 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
cn_martian 2006-04-27
在资源文件里,我是这么写的:
\nBmpEdit\n图像编辑\n图像文件 (*.bmp)\n.bmp\nBM.Report\nBM Report
但用菜单里的“打开”功能时,下面还是有显示“所有文件(*.*)”
回复
菜牛 2005-12-01
楼主没有搞错,我这个修改资源的方法就是针对框架产生的打开文件对话框的,而不是自定义对话框。
回复
ruby0602 2005-11-30
CReplaceDlg dlg(TRUE,NULL,NULL, OFN_ENABLETEMPLATE | OFN_ALLOWMULTISELECT | OFN_EXPLORER,"(*.bmp)|*.bmp|(*.*)|*.*||",NULL);
放在和工程目录相同名字的cpp的InitInstance()里
回复
cn_martian 2005-11-30
to 飘落的树叶、在相互:
  你们提供的这些方法都只对自定义的打开文件对话框起作用,系统自动产生的那个就是没去掉,唉!
回复
菜牛 2005-11-15
这是我一个例子中IDR_MAINFRAME字符串资源的内容:

ShowBitmap\n\nShowBitmap\nBitmap Files (*.bmp)\n.bmp\nShowBitmap.Document\nShowBitmap.Document
回复
kanghn 2005-11-15
你在多文档下面的下拉菜单下面可以给打开选项响应一个ID_FILE_OPEN消息,然后就可以定义那个CFileDialog了
回复
kanghn 2005-11-15
这个问题很简单啊,只要你在触发打开文件的消息函数里定义一个CFileDialog就可以啊,
eg:下面是一个打开位图文件的代码
void CCurveAdjustDlg::OnBottonOpen()
{
CFileDialog fileDialog(TRUE, NULL, NULL,
OFN_PATHMUSTEXIST | OFN_FILEMUSTEXIST,
_T("Bitmap(*.bmp)|*.bmp||"), this);

if (IDOK == fileDialog.DoModal())
{
CString csSrcFile = fileDialog.GetPathName();

//read the bitmap information
if(!ReadInfo(csSrcFile))
{
return;
}

HBITMAP hBitmap = GetBitmap();
if (NULL == hBitmap)
{
return;
}

Invalidate(TRUE);

if (!m_displayWnd.DisplayImageTOWnd(hBitmap))
{
return;
}
}

}
回复
cn_martian 2005-11-15
那里没有 *.* 这个选项啊。
回复
菜牛 2005-11-15
在字符串资源中修改。
回复
cn_martian 2005-11-15
至今没解决,我该怎么办?
回复
goodboyws 2005-10-17
响应
ID_FILE_OPEN
回复
cn_martian 2005-10-17
高人啊! 不过我就是找不到下手的地方。呵呵。
回复
livedeal 2005-10-17
重载
回复
cn_martian 2005-10-17
我自己创建文件选择对话框可以写这个,但我用的系统自动产生的那个打开菜单,不知道要怎么做了。
回复
cn_martian 2005-10-17
写在哪个地方啊?
回复
goodboyws 2005-10-17
CFileDialog dlg(FALSE, "BMP",NULL, OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, "位图文件 (*.bmp)||");
回复
相关推荐
发帖
界面
创建于2007-09-28

1.5w+

社区成员

VC/MFC 界面
申请成为版主
帖子事件
创建了帖子
2005-10-17 01:58
社区公告
暂无公告