IShellFolderView::Rearrange メソッド (shlobj_core.h)
[再配置 は、[要件] セクションで指定されたオペレーティング システムで使用できます。 今後のバージョンでは変更されるか、利用できなくなる場合もあります。 代わりに、 GetSortColumns を使用します。
並べ替えルールに従ってビュー内の項目を再配置します。
構文
HRESULT Rearrange(
[in] LPARAM lParamSort
);
パラメーター
[in] lParamSort
型: LPARAM
再配置の実行方法を指定します。
lParamSort の下位 16 ビットは、並べ替え規則を定義します。 ほとんどのアプリケーションでは、並べ替えルールを既定値の 0 に設定し、項目を名前で並べ替える必要があることを示します。 システムでは、他の並べ替えルールは定義されません。 一部のフォルダー オブジェクトでは、呼び出し元のアプリケーションで lParamSort の下位 16 ビットを使用して、フォルダー固有の並べ替え規則を指定できる場合があります。 ルールとそれに関連付けられている lParamSort 値は、 フォルダーによって定義されます。
システム フォルダー ビュー オブジェクトが IShellFolderView::Rearrange を呼び出すと、 lParamSort の下位 16 ビットを使用して、配置に使用する列が指定されます。
並べ替え規則を変更するフラグには、 lParamSort の上位 16 ビットが使用されます。 システムは現在、次の修飾子フラグを定義しています。
SHCIDS_ALLFIELDS
バージョン 5.0。 表示名だけでなく、 ITEMIDLIST 構造体に含まれるすべての情報を配置します。 このフラグは、 IShellFolder2 インターフェイスをサポートするフォルダー オブジェクトに対してのみ有効です。 たとえば、2 つの項目がファイルの場合、フォルダーは、名前、サイズ、ファイル時刻、属性、および構造体内のその他の情報を配置する必要があります。 このフラグが設定されている場合、 lParamSort の下位 16 ビットは 0 である必要があります。
SHCIDS_CANONICALONLY
バージョン 5.0。 名前で配置する場合は、システム名を配置しますが、表示名は配置しないでください。 このフラグが渡されると、一貫性のある並べ替え関数が実装されている限り、シェル フォルダーが最も効率的であると判断する条件によって 2 つの項目が配置されます。 このフラグを他のフラグと組み合わせることはできません。
戻り値
種類: HRESULT
このメソッドは、成功すると S_OK を返します。 そうでない場合は、HRESULT エラー コードを返します。
注釈
アプリケーションの呼び出しに関するメモ
フォルダー オブジェクトが IShellFolder2 をサポートしていない場合は、lParamSort で SHCIDS_ALLFIELDS フラグを設定しないでください。 これにより、予測できない結果が生じる可能性があります。 SHCIDS_ALLFIELDS フラグを使用する場合は、lParamSort の下位 16 ビットを 0 に設定する必要があります。実装者への注意
並べ替えルールを抽出するには、ビットごとの AND 演算子 (&) を使用して 、lParamSort と SHCIDS_COLUMNMASK (0X0000FFFF) を組み合わせます。 この操作は、SHCIDS_ALLFIELDS値を含め、 lParamSort の上位 16 ビットをマスクします。要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows XP (デスクトップ アプリのみ) |
サポートされている最小のサーバー | Windows Server 2003 (デスクトップ アプリのみ) |
対象プラットフォーム | Windows |
ヘッダー | shlobj_core.h |