【问题标题】:TOpenDialog - zip as filesTOpenDialog - 压缩为文件
【发布时间】:2011-09-18 04:56:49
【问题描述】:

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

通过显示为文件夹我的意思是这样的:

【问题讨论】:

    标签: delphi windows-7 delphi-xe


    【解决方案1】:

    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 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)了解对话框的“入口”点。

    【讨论】:

    • @David:啊,谢谢,还没有机会打开 Delphi :-) 编辑了我的答案。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-09-05
    • 2019-02-24
    • 1970-01-01
    • 1970-01-01
    • 2010-12-14
    • 2013-03-09
    相关资源
    最近更新 更多