Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/delphi/9.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 如何使用TFileOpenDialog预览图像_Delphi_Delphi 2010 - Fatal编程技术网

Delphi 如何使用TFileOpenDialog预览图像

Delphi 如何使用TFileOpenDialog预览图像,delphi,delphi-2010,Delphi,Delphi 2010,有人知道如何在TFileOpenDialog预览中显示图像吗 我正在使用ImageEn显示图像信息,并向对话框添加额外的文件类型支持。例如我可以加载有关jp2、j2k和其他不支持的文件类型的图像信息,但如何加载不支持的图像类型以使用ImageEn进行预览 我在对话框中显示图像信息,效果很好,但我找不到任何有关如何将不受支持的图像加载到PreviewHandler的信息。我可以使用IMAGENIO获取文件信息以及图像的位图 TFileOpenDialog是否使用预览处理程序来显示图像,还是需要其

有人知道如何在TFileOpenDialog预览中显示图像吗

我正在使用ImageEn显示图像信息,并向对话框添加额外的文件类型支持。例如我可以加载有关jp2、j2k和其他不支持的文件类型的图像信息,但如何加载不支持的图像类型以使用ImageEn进行预览

我在对话框中显示图像信息,效果很好,但我找不到任何有关如何将不受支持的图像加载到PreviewHandler的信息。我可以使用IMAGENIO获取文件信息以及图像的位图

TFileOpenDialog是否使用预览处理程序来显示图像,还是需要其他方式

很抱歉,我没有显示图像的代码,但我不知道如何实现它

Rodrigo对在Delphi VCL应用程序中托管预览处理程序发表了评论。windows资源管理器不使用预览处理程序预览图像。。。因此,我假设TFileOpenDialog使用与Windows资源管理器相同的API,但我甚至不确定这一点


如果这个问题太广泛而不能被接受,我将删除这个问题。

…windows资源管理器没有使用预览处理程序来预览图像。
当我说的时候,我指的是gif、jpeg、bmp、png等标准图像格式。对于其他自定义格式,您必须实现预览处理程序,此外,您还可以使用和界面注册缩略图。

OpenPictureDialog是一个选项吗?否。。。我知道怎么做。需要使用TFileOpenDialog执行此操作。@RRUZ,Remy Lebeau已发布使用IShellItemImageFactory,因为它在内部委托给IThumbnailProvider(当IThumbnailProvider不可用时,委托给IExractImage和IEExtractCon)。使用IShellItemImageFactory更好吗?@RRUZ,我认为最好还是试试看。如果您没有完全掌握这一点,您必须实现一个预览处理程序并将其注册到shell中。您可以在delphi应用程序之外实现此功能。这是因为它是在文件对话框中显示预览的shell,即使该对话框位于您的应用程序中。谢谢David。这比我想象的要复杂得多,但谢谢你的帮助。