CFileDialog扩展名问题

glchen57 2006-05-22 11:45:15
我们在word里面“另存为”的时候,如果选择了一个扩展名,譬如(html),然后在文件名里面又输入(mine.doc),那么word会判断出来,并且自动把文件保存为mine.doc.html

这个如果用CFileDialog做的话,是可以透过配置那些参数达到呢,还是要自己获取扩展名然后做一些逻辑判断来实现?

如果是前者的话,告诉我一下怎么做吧,谢谢
...全文
225 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
property1 2006-05-22
  • 打赏
  • 举报
回复
http://msdn2.microsoft.com/zh-cn/library/wh5hz49d.aspx
allenhiman 2006-05-22
  • 打赏
  • 举报
回复
24160586
allenhiman 2006-05-22
  • 打赏
  • 举报
回复
....我具体试验了一下,米问题啊
QQ我传给你代码
glchen57 2006-05-22
  • 打赏
  • 举报
回复
谢谢楼上的。
但是我试了一下,到GetParent()->GetDlgItem( 0x0480 )->SetWindowText( m_szFileTitle );
就异常了。
是不是ID不对呀?
初学MFC,多多指教,谢谢!
allenhiman 2006-05-22
  • 打赏
  • 举报
回复
哦,要想实现word那样的效果,看来得重载CFileDialog::OnFillenameOk()了
让FileDialog停顿一下在消失
这是个问题,不行就timer吧,如下。。。
BOOL CXXXDlg::OnFileNameOK()
{
GetParent()->GetDlgItem( 0x0480 )->SetWindowText( m_szFileTitle );
//在泽河里想办法停一下
return CFileDialog::OnFileNameOK();
}
allenhiman 2006-05-22
  • 打赏
  • 举报
回复
CFileDialog的edit控件(输入文件名的edit)ID为0x0480
宏定义为:edt1(<dlgs.h>)
知道了这些,搂主应该知道如何改变edit的文本内容以及大小==了吧 :>
glchen57 2006-05-22
  • 打赏
  • 举报
回复
这个我看了阿,就是找不到答案才问的啊 :)

我最困惑的是,譬如你开一个word,另存为的时候,在“保存类型”选doc,然后在“文件名”里面输入 mine.txt,他会在保存动作开始之前,把“文件名”的那个编辑框文本改成“mine.txt.doc”。他是怎么在运行时改变这个编辑框的内容的呢,CFileDialog本身好像没提供这个接口

15,976

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧