【发布时间】:2011-09-18 04:56:49
【问题描述】:
如何在打开和保存对话框中强制 zip 存档显示为文件,而不是文件夹?
通过显示为文件夹我的意思是这样的:
【问题讨论】:
标签: delphi windows-7 delphi-xe
如何在打开和保存对话框中强制 zip 存档显示为文件,而不是文件夹?
通过显示为文件夹我的意思是这样的:
【问题讨论】:
标签: delphi windows-7 delphi-xe
Vista 及更高版本上的 Windows 文件打开对话框支持 IFileDialogEvents 接口。
其中一个事件(或回调,如果你愿意的话)是OnFolderChanging 事件。它允许实施者停止导航到特定位置。使用此事件将使您能够停止将 zip 文件作为文件夹输入,即使在运行您的应用程序的 Windows 安装中默认启用了该功能。如果 Windows 本身未启用导航,则看不到它如何启用导航到 zip。
详情请参阅:IFileDialogEvents Interface (http://msdn.microsoft.com/en-us/library/bb775876(v=VS.85).aspx)。
AlphaControls 可能使用这种方法。要自己做,您“只需”为 TOpenDialog.OnFolderChange 事件实现一个处理程序(感谢 David)。
要了解更多关于使用Common Item Dialog的信息,请参阅:http://msdn.microsoft.com/en-us/library/bb776913(v=VS.85).aspx
注意:Pre-Vista 通用对话框也支持事件,在这些版本中称为通知。它确实包含一个 FolderChange 通知,但没有我能找到的 FolderChangeing 通知。请参阅Common Dialog Box Notifications(http://msdn.microsoft.com/en-us/library/ff468811(v=VS.85).aspx 了解支持的通知列表。Dialog Boxes(http://msdn.microsoft.com/en-us/library/ms632588(v=VS.85).aspx)了解对话框的“入口”点。
【讨论】: