☆TShellResourcesって?
ヘルプによるとVistaのシェルアニメーションは、システムの外部からアクセスできなくなっているらしく、TShellResourcesはこのアニメーションリソースを提供するようです。まあ、ソースを見てもリソースのためだけに用意されていることが明らかですけどね。ということで、このリソース(CopyFiles)を表示させてみました。
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ShellAnimations, ComCtrls, StdCtrls; type TForm1 = class(TForm) Animate1: TAnimate; Animate2: TAnimate; ShellResources1: TShellResources; Label1: TLabel; Label2: TLabel; procedure FormCreate(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.FormCreate(Sender: TObject); begin // XP Animate1.CommonAVI := aviCopyFiles; Animate1.Active := True; // Vista(TShellResourcesより) // リソースエディターでIDを調べました。 Animate2.ResID := 160; // CopyFiles.res Animate2.ResHandle := hInstance; Animate2.Active := True; end; end.
実行させるとこんな感じ・・・。
ご覧のように少しイメージが異なります。 ヘルプには「TShellResources は、Vista で実行され、共有ライブラリからアニメーションを使用するプログラムにのみ使用してください。それ以外の場合は、必要のないオーバーヘッドを増やすだけです。 」とありますが、この微妙な差が気に入った方は使ってみてはいかが(笑)
| 固定リンク