Vcl.JumpList.TJumpList
Delphi
TJumpList = class(TCustomJumpList)
C++
class PASCALIMPLEMENTATION TJumpList : public TCustomJumpList
プロパティ
種類 | 可視性 | ソース | ユニット | 親 |
---|---|---|---|---|
class | public | Vcl.JumpList.pas Vcl.JumpList.hpp |
Vcl.JumpList | Vcl.JumpList |
説明
Windows ジャンプ リストをサポートできるようにするコンポーネントです。
Windows ジャンプ リストは Windows 7 で導入されたものです。TJumpList を使用するには、アプリケーションの動作環境が Windows 7 以降でなければなりません。ジャンプ リストがサポートされていないバージョンの Windows で TCustomJumpList を動作させると、TCustomJumpList.Enabled が False
になります。
- メモ: Enabled はデフォルトで
False
になっています。ジャンプ リストが機能するには、この値をTrue
に変更する必要があります。
TJumpList を使用すると、アプリケーションの機能のショートカットとなるタスクのリストや、任意の数のカスタム カテゴリおよびそれらに含まれるカスタム項目を、設計時に定義することができます。タスクやカスタム カテゴリおよびカスタム項目を定義したら、UpdateList を呼び出して、変更内容をアプリケーションのジャンプ リストに反映させる必要があります。あるいは、ジャンプ リスト コンポーネントの AutoRefresh プロパティを有効にすると、アプリケーションが起動した直後や、実行時にジャンプ リストを変更するたびに、変更内容を自動的に反映させることができます。
- メモ: Windows では空のリストは表示されません。
ユーザーは、アプリケーションで定義されたタスクやカスタム項目のリストから、タスクやカスタム項目を削除することができます。UpdateList など、一部のメソッドを呼び出すと、アプリケーションのジャンプ リストからユーザーが削除した項目のリストが取得されます。OnItemDeleted イベントを処理すると、これらのファイルの追跡やジャンプ リスト コンポーネントからの削除を行えます。これらの項目を再びジャンプ リストに追加することは自由ですが、Windows ではユーザーの選択を尊重することを推奨しています。
設計プロパティの他に、実行時に次のメソッドを使用して、タスクやカスタム カテゴリを管理することができます。
ジャンプ リスト コンポーネントには OnItemsLoaded イベントが用意されています。これは、コンポーネントへの読み込みが完了したときに発生します。タスクやカスタム カテゴリをすべて設計時ではなく実行時に定義する場合は、このイベントが、それらの初期値をアプリケーションの実行フローで定義できる最も早いタイミングになります。
また、ジャンプ リストを使用すると、アプリケーションでユーザーがこれまでに開いたファイルを表示することもできます。最近開いたファイルやよく開くファイル、あるいはその両方を表示できます。最近開いたファイルとよく開くファイルを両方とも表示することは可能ですが、Microsoft では、各アプリケーションでこれらのカテゴリのどちらか一方のみ使用することを推奨しています。
これらのファイルのリストは Windows に保持されており、GetRecentList や GetFrequentList を使って問い合わせることができます。最近開いたファイルとよく開くファイルのリストには、ユーザーが手動で開いたファイルとアプリケーションで TOpenDialog を使って開いたファイルが含まれます。また、AddToRecent、RemoveFromRecent、RemoveAllFromRecent の各メソッドを使用すると、これらのリストを実行時に変更することもできます。これらのメソッドは両方のリストに影響を及ぼします。つまり、ファイル エントリを追加または削除すると、最近開いたファイルのリストとよく開くファイルのリストの両方に対して、そのエントリの追加または削除が行われます。これらのリストのどちらか一方のみに対して、ファイル エントリの追加や削除を行うことはできません。
メモ: アプリケーションの最近開いたファイルのリストとよく開くファイルのリストは、デフォルトで無効になっています。最近開いたファイルやよく開くファイルをアプリケーションのジャンプ リストに表示できるようにするには、アプリケーションが次の要件のどちらか一方を満たす必要があります。
- アプリケーションのユーザーがアプリケーションを使って既にファイルを 1 つ以上開いていること。
- アプリケーションが 1 つ以上のファイル タイプのファイル ハンドラとしてシステムに登録されていること。
アプリケーションが複数のプロセスで構成されている場合は、ApplicationID プロパティを使用して、アプリケーションのすべてのプロセスに共通のジャンプ リストを保持することができます。アプリケーション ユーザー モデル ID をアプリケーションで既に使用している場合は、ApplicationID にアプリケーションの ID を設定します。
アプリケーションの複数のインスタンスを同時に実行できる場合は、アプリケーションのジャンプ リストが 2 つのインスタンスにより同時に変更されることがないような何らかのメカニズムを実装する必要があります。そうしないと、アプリケーションの一方のインスタンスからジャンプ リストに対して行われた変更が、別のアプリケーション インスタンスから行われた変更で上書きされるおそれがあります。
関連項目
- ジャンプ リスト(Windows ドキュメント)
- VCL タスクバー
- JumpListTest(Delphi)