关于SavePictureDialog 图片保存如何能提示重名覆盖?

xuyanjiao1800 2007-12-27 10:15:22
使用 SavePictureDialog 保存图片时如何使 有重名时询问是否覆盖原图片 点是覆盖 否从新选择图片名字

尽量写出代码谢谢各位!!
...全文
172 11 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
xuyanjiao1800 2007-12-27
  • 打赏
  • 举报
回复
确实是您说的那个问题~~

还有一点不解 就是 我把 DefaultExt 里面填上 .jpg

保存图片后 程序会崩溃报错 呵呵 好像我问得太多了 呵呵
stherix 2007-12-27
  • 打赏
  • 举报
回复
SaveDialog有个DefaultExt 如果不输入扩展名 他会自动加上这个
还有Filter也会有影响

你看看是不是这个问题
xuyanjiao1800 2007-12-27
  • 打赏
  • 举报
回复
用jerry8 的方法也是可以钻这个漏洞 但是还是不能正确保存 不过谢谢2位 百忙中帮我解答!!
xuyanjiao1800 2007-12-27
  • 打赏
  • 举报
回复
我试了一下 确实是不询问是否覆盖 但是即使点了保存 图片并非真的保存了 二是没有保存!

stherix 2007-12-27
  • 打赏
  • 举报
回复
我这里不会啊...
你看下扩展名是不是一样
xuyanjiao1800 2007-12-27
  • 打赏
  • 举报
回复
先谢谢 stherix 改了后 确实询问是否覆盖了 但还是有一个问题 就是我点取消后 删除输入框中的名字 在从新输入一个同名名字就不询问直接覆盖了!!!

例如 我的图片叫 0001 桌面上已经存在一个 0001 的图片文件了 我点保存 提示覆盖 我点取消把输入框中的 0001删除

重新输入 0001 点击保存 不询问是否而直接覆盖。。。请问这正常么?还是我哪里设定不对了?
jerry8 2007-12-27
  • 打赏
  • 举报
回复
3楼的简单实用学习了
jerry8 2007-12-27
  • 打赏
  • 举报
回复
if SavePictureDialog1.Execute then
if FileExists(SavePictureDialog1.FileName) then
if Application.MessageBox('文件已经存在,是否要覆盖?', '提示', MB_ICONQUESTION + MB_YESNO) = IDYes then
image1.Picture.SaveToFile(SavePictureDialog1.FileName);
stherix 2007-12-27
  • 打赏
  • 举报
回复
Options
ofOverwritePrompt
xuyanjiao1800 2007-12-27
  • 打赏
  • 举报
回复
这是我的图片保存代码 执行后就算图片存在也不会询问是否覆盖 你输入了名字 无论同名在于不在都会覆盖!

procedure TForm1.Save1Click(Sender: TObject);
begin
if Self.SavePictureDialog1.Execute then
begin
Image1.Picture.Bitmap.SaveToFile(SavePictureDialog1.FileName + '.bmp');
end;
end;

brightyang 2007-12-27
  • 打赏
  • 举报
回复
自动的

16,747

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 语言基础/算法/系统设计
社区管理员
  • 语言基础/算法/系统设计社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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