最近使用したアイテム
最近使用した項目の一覧は、アプリケーション メニュー のウィンドウで、アプリケーションで最も最近使用された (MRU) 項目が表示されます。
細部
次のスクリーン ショットは、Windows 7 用ワードパッドの最近使ったアイテムの一覧を示しています)。
アプリケーション メニュー には、ユーザーが作業している最近 のドキュメント、画像、映画などのプロジェクトを表示するために、ApplicationMenu.RecentItems 要素で表される ApplicationMenu.RecentItems リストを最大 1 つ含めることができます。 リストされている項目の数は、0 からマークアップで指定された最大数までの範囲で、既定値は 10 です。 最近使用した項目は、ファイル名を示す文字列の番号付きリストとして表示されます。 次のスクリーン ショットに示すように、Command.LabelDescription プロパティを使用して、ファイルの場所の完全なパスを指定することをお勧めします。
RecentItems 要素には、EnablePinning 属性があり、true
に設定すると、次のスクリーン ショットに示すように、リスト内の各項目の右側にピン アイコンが表示されます。
手記
EnablePinning 属性が指定されていない場合、ピン留めは既定で有効になります。
ピン留めアルゴリズムは、最近使った項目 リストからアイテムが落ちないようにするためのものです。 このアルゴリズムでは、次の動作が生成されます。
- 新しいアイテムは、常に 最近使った項目の一覧の上部 追加されます。
- アイテムは時間の経過と同時にリスト内で下に移動します。 リストがいっぱいになると (マークアップで指定された項目の最大数に達します)、新しい項目がリストの一番上に追加されると、古い項目はリストの一番下から削除されます。
- 項目がリスト内のどこかに既に表示されているが、再びアクセスされる場合は、リストの一番上に戻ります。
- 項目がピン留めされている場合でも、リストの下に移動しますが、一番下から外れるわけではありません。 代わりに、リストがいっぱいになると、新しい項目がリストに追加されると、ピン留めされた項目の上にある最初のピン留めされていない項目が削除されます。
- ピン留めされたアイテムの数がアイテムの最大数に達した場合、項目がピン留めされない限り、新しい項目はリストに追加されません。
最近使用したアイテムのプロパティ
リボン フレームワークは、[最近使ったアイテム] コントロールに プロパティ キーのコレクションを定義します。
通常、最近使ったアイテムプロパティは、IUIFramework::InvalidateUICommand メソッドの呼び出しによってコントロールに関連付けられているコマンドを無効にすることで、リボン UI で更新されます。 無効化イベントが処理され、IUICommandHandler::UpdateProperty コールバック メソッドによってプロパティが更新されます。
IUICommandHandler::UpdateProperty コールバック メソッドは実行されず、アプリケーションは、フレームワークでプロパティが必要になるまで、更新されたプロパティ値を照会しました。 たとえば、タブがアクティブになり、リボン UI にコントロールが表示されたときや、ツールヒントが表示されたときなどです。
手記
場合によっては、IUIFramework::GetUICommandProperty メソッドを使用してプロパティを取得し、IUIFramework::SetUICommandProperty メソッドで設定できます。
次の表に、Recent Items コントロールに関連付けられているプロパティ キーの一覧を示します。
プロパティ キー | 筆記 |
---|---|
UI_PKEY_Keytip | 無効化によってのみ更新できます。 |
UI_PKEY_RecentItems | 無効化によってのみ更新できます。 |
備考
IApplicationDocumentLists::GetList メソッドを使用して、リボン アプリケーションの Windows シェル MRU リストを取得できます。 このメソッドによって取得されたオブジェクトを使用して、リボン フレームワークで必要なデータを作成し、アプリケーション メニューの一覧 最近使った項目を設定できます。
手記
このメソッドを使用する場合、listtype 値が ADLT_RECENT
必要です。
リボン フレームワーク アプリケーションで MRU 項目リストを実装する方法の例については、HTMLEditRibbon サンプルを参照してください。
関連トピック