次の方法で共有


CImage::GetImporterFilterString

更新 : 2007 年 11 月

イメージの読み込みに使用できるイメージ形式を取得します。

static HRESULT GetImporterFilterString(
   CSimpleString& strImporters,
   CSimpleArray< GUID >& aguidFileTypes,
   LPCTSTR pszAllFilesDescription = NULL,
   DWORD dwExclude = excludeDefaultLoad,
   TCHAR chSeparator = _T( '|' )
);

パラメータ

  • strImporters
    CSimpleString オブジェクトへの参照。詳細については、「解説」を参照してください。

  • aguidFileTypes
    GUID の配列。各要素は、文字列内のいずれかのファイル形式に対応します。以下の pszAllFilesDescription の例では、aguidFileTypes[0] は GUID_NULL であり、その他の配列値は現在のオペレーティング システムがサポートするイメージ ファイル形式です。

    y7feb8td.alert_note(ja-jp,VS.90).gifメモ :

    定数の一覧については、Windows SDK の「Image File Format Constants」を参照してください。

  • pszAllFilesDescription
    このパラメータが NULL 以外の場合は、フィルタ文字列のリストの先頭にフィルタが 1 つ追加されます。pszAllFilesDescription の現在の値が、追加されるフィルタの説明になります。このフィルタでは、リスト内の他のフィルタがサポートする拡張子を持つすべてのファイルが受け入れられます。

    次に例を示します。

    //First filter in the list will be titled "All Image Files", and
    //will accept files with any extension supported by any importer.
    CImage::GetImporterFilterString( strImporters, aguidFileTypes, 
       _T("All Image Files"));
    
  • dwExclude
    リストから除外するファイル形式を指定する、ビット フラグのセット。指定できるフラグを次に示します。

    • excludeGIF = 0x01   GIF ファイルを除外します。

    • excludeBMP = 0x02   BMP ファイル (Windows ビットマップ) を除外します。

    • excludeEMF = 0x04   EMF ファイル (拡張メタファイル) を除外します。

    • excludeWMF = 0x08   WMF ファイル (Windows メタファイル) を除外します。

    • excludeJPEG = 0x10   JPEG ファイルを除外します。

    • excludePNG = 0x20   PNG ファイルを除外します。

    • excludeTIFF = 0x40   TIFF ファイルを除外します。

    • excludeIcon = 0x80   ICO (Windows アイコン) ファイルを除外します。

    • excludeOther = 0x80000000   上記以外のすべてのファイル形式を除外します。

    • excludeDefaultLoad = 0   既定では、すべてのファイル形式を読み込み対象に含みます。

    • excludeDefaultSave = excludeIcon | excludeEMF | excludeWMF   これらのファイルは他のファイルとは条件が異なるため、既定では、保存できるファイル形式から除外されています。

  • chSeparator
    イメージ形式を区切るために使用される区切り記号。詳細については、「解説」を参照してください。

解説

使用できるイメージ形式の拡張子を [開く] ダイアログ ボックスに表示するには、このメソッドで取得した、イメージ形式を指定する文字列を MFC の CFileDialog オブジェクトに渡します。

パラメータ strImporter の形式は、次のとおりです。

file description0|*.ext0|filedescription1|*.ext1|...file descriptionn|*.extn||

縦棒 (|) は chSeparator で指定される区切り記号です。次に例を示します。

"Bitmap format|*.bmp|JPEG format|*.jpg|GIF format|*.gif|PNG format|*.png||"

この文字列を MFC の CFileDialog オブジェクトに渡すときは、既定の区切り記号 (|) を使用してください。この文字列を標準の [開く] ダイアログ ボックスに渡すときは、区切り記号 NULL (\0) を使用します。

必要条件

ヘッダー : atlimage.h

参照

参照

CImage クラス

CImage::GetExporterFilterString

CFileDialog::m_ofn   

CFileDialog::GetFileExt

OPENFILENAME

CFileDialog::SetDefExt

その他の技術情報

CImage のメンバ