如何在delphi中显示类似windows资源管理器的文件缩略图?

如何在delphi中显示类似windows资源管理器的文件缩略图?,delphi,delphi-2010,Delphi,Delphi 2010,我使用TFileListBox控件来显示文件列表。但是我想知道如何像Windows资源管理器那样显示文件缩略图 您应该尝试使用Delphi中包含的ShellControls组件。(请注意,David Heffernan提到了这一点,TLama在对您的问题的前两条评论中提出了初步的具体建议。)在最新版本中,默认情况下不会安装它们,因此您必须自己安装它们 这些说明适用于您指出正在使用的Delphi版本(Delphi 2010)-它们对于XE/XE2基本相同,只是它们位于Samples\Delphi\

我使用
TFileListBox
控件来显示文件列表。但是我想知道如何像Windows资源管理器那样显示文件缩略图

您应该尝试使用Delphi中包含的
ShellControls
组件。(请注意,David Heffernan提到了这一点,TLama在对您的问题的前两条评论中提出了初步的具体建议。)在最新版本中,默认情况下不会安装它们,因此您必须自己安装它们

这些说明适用于您指出正在使用的Delphi版本(Delphi 2010)-它们对于
XE/XE2
基本相同,只是它们位于
Samples\Delphi\VCL\ShellControls
文件夹中(当然,
Start
条目包含
XE
XE2
而不是
2010

使用
Start->All Programs
,导航到
Embarcadero RAD Studio
Embarcadero Delphi 2010
项目,展开它,然后选择
Demos
。它位于
DelphiWin32\VCLWin32\ShellControls
下的
Win32
文件夹中。首先打开并构建
vclshlctrls.dproj
,然后构建并运行安装
dclshlctrls.dproj
。您需要将上面的文件夹添加到搜索路径中的
Project->Options
,编译器才能找到它们

要在构建第二个包后安装组件,请右键单击“项目管理器”中的项目,然后从弹出窗口(上下文)中选择“安装”菜单。默认配置中的“项目管理器”是屏幕右边缘显示项目中文件的区域。请记住,您需要先构建
VCLSHLCTRL
,然后安装
DCLSHLCTRL
,这是设计时包


然后,您应该在您的调色板上的
Samples
类别中找到
TShellListView
TShellTreeView
TShellComboBox
tshellchangeinnotifier
组件。

thumb文件是普通的png文件,只是具有不同的文件后缀。 知道这一点可以在一段时间内展示它们

首先,需要将.thumb扩展名注册为新的文件格式。 为此,请在您的使用中包括PngImage,并将其称为:

MyImage.Picture.RegisterFileFormat('thumb', 'PNG based thumbnails', TPngImage);
稍后,您可以按如下方式显示所需的thumb文件:

MyImage.Picture.LoadFromFile('d:\Pictures\Pictures.thumb');

你真的需要一个真正的控件。比如列表视图。你可以使用一个支持shell的列表视图。@David,OT:
ShellControls
是否仍在分发(与D2010一起)?我想它在
Demos
路径的某个地方。无论如何,我猜它们不支持缩略图。@特拉玛我认为ShellControls仍然存在。我过去使用过ShellShock。shell控件在Delphi 2010中。使用开始->所有程序,导航到RAD Studio或Delphi 2010项目,展开它,然后选择
Demos
。它在在
DelphiWin32\VCLWin32\ShellControls
下创建Win32文件夹。首先打开并构建
vclshlctrls.dproj
,然后构建并安装
dclshlctrls.dproj
。您需要将上面的文件夹添加到您的项目->搜索路径中的选项,编译器才能找到它们。顺便说一句,
embarcadero
 borland
在您的标签中是不必要的,因为
Delphi
是由他们开发的。公司名称是毫无意义的,就像使用
microsoft
来回答有关
Visual Studio
的问题一样-没有其他
Visual Studio
制造商,也没有其他
Delphi
IDE制造商。@Ken,实际上它是正如我提到的
ShellControls
,注意它们没有缩略图支持。那么,它们支持缩略图吗(我现在无法检查,但我记得它们不支持)?如果ShellControls不支持缩略图视图,那么这个答案是不正确的。ShellControls不支持Delphi 2010的缩略图视图。ShellControls支持Delphi XE2中的缩略图吗?@TLama:你说得对。David提到了“支持shell的列表视图”,但您是第一个特别提到ShellControls的人。更正。AFA ShellControls是否支持缩略图,我不知道(我没有时间检查)。如果您阅读了对原始问题的评论,Sidhi要求我发布这些说明(首先在这些评论中提供)作为对这个问题的回答,我这样做了。因为它被接受了,所以它一定是询问者想要的。科比克:读一下我在你名字前写的las句子-如果询问者说这是他们想要的答案,这是正确的。:@Ken,我从来没有读过评论,我看了一下题名,题名是:
如何在delphi中像windows explorer那样显示文件缩略图?
。但如果OP对此感到高兴,我也会很高兴……:)