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

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

尽量写出代码谢谢各位!!
...全文
161 11 打赏 收藏 转发到动态 举报
写回复
用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
  • 打赏
  • 举报
回复
自动的
Re:计算机网络  应用层 诸多协议 实验环境搭建  DNS、DHCP、HTTP、FTP、Telnet、RDP、STMP、POP3、IMAP======================# 应用层 诸多协议 域名系统 DNS 动态主机配置协议 DHCP 超级文本传输协议 HTTP 文件传输协议 FTP Telnet 协议和 RDP(远程桌面协议) 发送电子邮件的协议 SMTP  接收电子邮件的协议 POP3 和 IMAP # 什么是域名 整个Internet网站和各种服务器数量众多,各个组织的服务器都需要给一个名称,这就很容易重名。如何确保Internet上的服务器名称在整个Internet唯一呢?这就需要Internet上有域名管理认证机构进行统一管理。如果你的公司在互联网上有一组服务器(邮件服务器、FTP服务器、Web服务器等),你需要为你的公司先申请一个域名,也就是向管理认证机构注册一个域名。 域名的注册遵循先申请先注册为原则,管理认证机构要确保每一个域名的注册都是独一无二、不可重复的。 # 动态主机配置协议 DHCP 静态地址和动态地址应用场景 DHCP 地址租约 DHCP 租约生成过程 DHCP 地址租约更新 # Telnet 协议 Telnet是一个简单的远程终端协议(非加密、且简单),它也是因特网的正式标准。用户使用telnet客户端就可以连接到远程运行Telnet服务的设备(可以是网络设备例如:路由器、交换机,也可以是操作系统,比如Windows或Linux等),进行远程管理。 Telnet能将用户的键盘指令传到远地主机,同时也能将远地主机的输出通过TCP连接返回到用户屏幕。这种服务是透明的,因为用户感觉到好像键盘和显示器是直接连在远地主机上。因此,Telnet又称为终端仿真协议。 Telnet并不复杂,以前应用得很多。现在由于操作系统(Windows和Linux)功能越来越强,用户己较少使用Telnet了。不过配置Linux服务器和网络设备还是需要 Telnet 来实现远程管理和配置 # 远程桌面协议 RDP 现在Windows操作系统很少使用telnet进行远程管理了,更多是使用远程桌面进行远程管理。 Windows系统启用远程桌面,客户端使用远程桌面客户端(mstsc)进行连接。 它们之间使用RDP协议进行通信,RDP协议默认使用TCP的3389端口。 # http 协议、版本和网页 创建网页(准备创建网站、需要设计网页和安装Web服务器) 统一资源定位符URL 绝对路径和相对路径 创建Web站点 HTTP协议版本 HTTP请求报文和响应报文 HTTP响应报文: Cookie 通过代理服务器访问网站 # 文件传输协议 FTP FTP 是File Transfer Protocol(文件传输协议)的英文简称。用于Internet上的控制文件的双向传输。基于不同的操作系统有不同的FTP应用程序,而所有这些应用程序都遵守同一种协议以传输文件。 在FTP的使用当中,用户经常遇到两个概念:“下载”(Download)和“上传”(Upload)。“下载”文件就是从远程主机拷贝文件至自己的计算机上;“上传”文件就是将文件从自己的计算机中拷贝至远程主机上。用Internet语言来说,用户可通过客户机程序向(从)远程主机上传(下载)文件。 简单地说,支持FTP协议的服务器就是FTP服务器。 # 安装和配置邮件服务器  模拟整个互联网发送邮件的过程 发送电子邮件的协议 SMTP  接收电子邮件的协议 POP3 和 IMAP--------------------------------------              

16,749

社区成员

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

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