Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/delphi/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Delphi中,OnIncludeItem事件如何在TopEndDialog上工作?_Delphi - Fatal编程技术网

在Delphi中,OnIncludeItem事件如何在TopEndDialog上工作?

在Delphi中,OnIncludeItem事件如何在TopEndDialog上工作?,delphi,Delphi,我一直在使用DelphiXe2中的TOpenDialog,但还没有找到如何使OnIncludeItem事件工作的方法。我希望能够根据文件名(或文件大小等)显示文件。有人成功使用过此事件吗?TopEndDialog是Windows公用对话框组件的封装。OnIncludeItem事件是CDN\u INCLUDEITEM通知机制的封装。说明始终包含设置了SFGAO\u文件系统和SFGAO\u文件系统存储标志的项目,而不管您从CDN\u INCLUDEITEM通知消息(或事件,在Delphi中)返回什么

我一直在使用DelphiXe2中的TOpenDialog,但还没有找到如何使OnIncludeItem事件工作的方法。我希望能够根据文件名(或文件大小等)显示文件。有人成功使用过此事件吗?

TopEndDialog是Windows公用对话框组件的封装。OnIncludeItem事件是CDN\u INCLUDEITEM通知机制的封装。说明始终包含设置了SFGAO\u文件系统SFGAO\u文件系统存储标志的项目,而不管您从CDN\u INCLUDEITEM通知消息(或事件,在Delphi中)返回什么

此外,进一步向我表明,CDN_INCLUDEITEM机制从来都不是用来过滤文件系统项的,而是用来排除不属于文件系统的内容


这在。

设置中得到确认,包括:=假(或真)在OnIncludeItem中,事件似乎没有任何作用-因此我认为您是对的,它不能用于过滤文件。我希望在Vista up上,该事件甚至不会触发,因为TopEndDialog是在新的公共项对话框而不是旧的公共文件对话框上实现的。事实上,至少对于我的简单测试来说,
OnIncludeItem
从不触发,并且您会得到旧的遗留对话框。世界上最糟糕的@大卫。。这是其中的一个组件,我认为它正试图为不同的东西提供一个统一的编程接口,而这些东西在不同的外观上有着很大的不同,因此使用TCommonItemOpenDialog和TopEndDialog的“不便”是值得的。试图弄清楚这个组件在各种可以应用的设置下是如何工作的——无论是有意的还是无意的——都是失眠的秘诀!