TOpenDialog - zip文件

时间:2011-06-19 15:44:02

标签: delphi windows-7 delphi-xe

如何在打开和保存对话框中强制将zip存档显示为文件,而不是文件夹?

显示为文件夹我的意思是:

enter image description here

1 个答案:

答案 0 :(得分:10)

Vista及更高版本上的Windows文件打开对话框支持IFileDialogEvents接口。

其中一个事件(或回调,如果你愿意)是OnFolderChanging事件。它允许实施者停止导航到特定位置。使用此事件可以使您停止将zip文件作为文件夹输入,即使在运行应用程序的Windows安装中默认启用该功能也是如此。如果Windows中没有启用导航,请不要看它如何能够导航到zip。

有关详细信息,请参阅:IFileDialogEvents Interfacehttp://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

注意:Vista之前的常用对话框也支持事件,在这些版本中称为通知。它包含一个FolderChange通知,但没有我可以找到的FolderChanging。请参阅Common Dialog Box Notificationshttp://msdn.microsoft.com/en-us/library/ff468811(v=VS.85).aspx以获取支持的通知列表。Dialog Boxeshttp://msdn.microsoft.com/en-us/library/ms632588(v=VS.85).aspx)表示“条目”指向对话框。