IFolderFilter インターフェイス (shobjidl_core.h)

サーバー アプリケーションによってシェル フォルダーの列挙をフィルター処理する方法を指定するために、クライアントによって公開されます。

継承

IFolderFilter インターフェイスは、IUnknown インターフェイスから継承されます。 IFolderFilter には、次の種類のメンバーもあります。

メソッド

IFolderFilter インターフェイスには、これらのメソッドがあります。

 
IFolderFilter::GetEnumFlags

クライアントがシェル フォルダー内のどのクラスのオブジェクトを列挙するかを指定できるようにします。 SHBrowseForFolder と共に使用する場合は、ダイアログ ボックス ツリー ビューに表示する必要がある項目のクラスまたはクラスを指定し、どのクラスまたはクラスを表示しないかを指定します。
IFolderFilter::ShouldShow

フィルターを介して個々のアイテムを許可し、ブロックする必要があるかどうかを指定します。

注釈

このインターフェイスは、ほとんどの場合 、SHBrowseForFolder と共に使用され、フォルダー選択ダイアログ ボックスに表示されるツリー ビューの内容をフィルター処理します。 SHBrowseForFolderIFolderFilter を使用するには、BIF_NEWDIALOGSTYLE フラグを設定する必要があります。

アプリケーションが SHBrowseForFolder を呼び出すと、フォルダー ブラウザー オブジェクトのクライアントになります。 フォルダー ブラウザー オブジェクトは、コールバック関数 BrowseCallbackProc にメッセージを送信することで、ユーザーと通信します。 そのコールバック関数によって処理される BFFM_IUNKNOWN メッセージには、フォルダー ブラウザーの IUnknown インターフェイスへのポインターが含まれています。 フォルダーの内容の表示をフィルター処理するには、次の操作を行います。

  1. フォルダー ブラウザーの QueryInterface メソッドを使用して、 IFolderFilterSite インターフェイスへのポインターを要求します。
  2. IFolderFilterSite::SetFilter を呼び出し、IFolderFilter インターフェイスへのポインターを渡します。
  3. 次に、フォルダー ブラウザーは IFolderFilter::GetEnumFlagsIFolderFilter::ShouldShow に対してクエリを実行して、列挙をフィルター処理する方法を決定します。

要件

要件
サポートされている最小のクライアント Windows XP (デスクトップ アプリのみ)
サポートされている最小のサーバー Windows Server 2003 (デスクトップ アプリのみ)
対象プラットフォーム Windows
ヘッダー shobjidl_core.h (Shobjidl.h を含む)

こちらもご覧ください

IFolderFilterSite