CHOOSEFONTW 構造体 (commdlg.h)
ChooseFont 関数が [フォント] ダイアログ ボックスの初期化に使用する情報を格納します。 ユーザーがダイアログ ボックスを閉じると、システムはこの構造でユーザーの選択に関する情報を返します。
構文
typedef struct tagCHOOSEFONTW {
DWORD lStructSize;
HWND hwndOwner;
HDC hDC;
LPLOGFONTW lpLogFont;
INT iPointSize;
DWORD Flags;
COLORREF rgbColors;
LPARAM lCustData;
LPCFHOOKPROC lpfnHook;
LPCWSTR lpTemplateName;
HINSTANCE hInstance;
LPWSTR lpszStyle;
WORD nFontType;
WORD ___MISSING_ALIGNMENT__;
INT nSizeMin;
INT nSizeMax;
} CHOOSEFONTW;
メンバー
lStructSize
型: DWORD
構造体の長さ (バイト単位)。
hwndOwner
型: HWND
ダイアログ ボックスを所有するウィンドウへのハンドル。 このメンバーは、任意の有効なウィンドウ ハンドルにすることも、ダイアログ ボックスに所有者がない場合は NULL にすることもできます。
hDC
種類: HDC
このメンバーは ChooseFont 関数では無視されます。
Windows Vista および Windows XP/2000: ダイアログ ボックスにフォントが表示されるプリンターのデバイス コンテキストまたは情報コンテキストへのハンドル。 このメンバーは、Flags メンバーがCF_PRINTERFONTSまたはCF_BOTH フラグを指定する場合にのみ使用されます。それ以外の場合、このメンバーは無視されます。
lpLogFont
種類: LPLOGFONT
LOGFONT 構造体へのポインター。 Flags メンバーでCF_INITTOLOGFONTSTRUCT フラグを設定し、他のメンバーを初期化すると、ChooseFont 関数は LOGFONT メンバーと一致するフォントでダイアログ ボックスを初期化します。 ユーザーが [OK] ボタンをクリックすると、 ChooseFont は ユーザーの選択に基づいて LOGFONT 構造体のメンバーを設定します。
iPointSize
型: INT
選択したフォントのサイズ (ポイントの 1/10 単位)。 ChooseFont 関数は、ユーザーがダイアログ ボックスを閉じると、この値を設定します。
Flags
型: DWORD
[ フォント ] ダイアログ ボックスの初期化に使用できるビット フラグのセット。 ダイアログ ボックスが返されると、ユーザー入力を示すようにこれらのフラグが設定されます。 このメンバーには、次の値の 1 つ以上を指定できます。
値 | 意味 |
---|---|
|
ダイアログ ボックスに [適用 ] ボタンが表示されます。 [適用] ボタンのメッセージWM_COMMAND処理するフック プロシージャを指定する必要があります。 フック プロシージャは、 WM_CHOOSEFONT_GETLOGFONT メッセージをダイアログ ボックスに送信して、フォントの現在の選択範囲を含む構造体のアドレスを取得できます。 |
|
このフラグは、互換性のために残されています。 OEM またはシンボル文字セットを使用するスクリプトを除くすべてのスクリプトにフォントの選択を制限するには、CF_SCRIPTSONLYを使用 します。 元のCF_ANSIONLY動作を取得するには、CF_SELECTSCRIPTを使用し、lpLogFontが指す LOGFONT 構造体の lfCharSet メンバーにANSI_CHARSETを指定します。 |
|
フォント列挙では、このフラグは無視されます。
Windows Vista および Windows XP/2000: ダイアログ ボックスに使用可能なプリンターと画面のフォントが一覧表示されます。 hDC メンバーは、プリンターに関連付けられているデバイス コンテキストまたは情報コンテキストへのハンドルです。 このフラグは、 CF_SCREENFONTS フラグと CF_PRINTERFONTS フラグの組み合わせです。 |
|
ダイアログ ボックスに、ユーザーが取り消し線、下線、およびテキストの色オプションを指定できるようにするコントロールを表示します。 このフラグが設定されている場合は、 rgbColors メンバーを使用して初期テキストの色を指定できます。 lpLogFont が指す構造体の lfStrikeOut メンバーと lfUnderline メンバーを使用して、取り消し線と下線のチェックボックスの初期設定を指定できます。 ChooseFont では 、これらのメンバーを使用して、ユーザーの選択内容を返すことができます。 |
|
この構造体の lpfnHook メンバーで指定されたフック プロシージャを有効にします。 |
|
hInstance メンバーと lpTemplateName メンバーが、既定のテンプレートの代わりに使用するダイアログ ボックス テンプレートを指定することを示します。 |
|
hInstance メンバーが、事前に読み込まれたダイアログ ボックス テンプレートを含むデータ ブロックを識別することを示します。 このフラグが指定されている場合、システムは lpTemplateName メンバーを無視します。 |
|
ChooseFont は 、固定ピッチ フォントのみを列挙して選択できるようにする必要があります。 |
|
ユーザーがダイアログ ボックスに表示されないフォントまたはスタイルを選択しようとすると、ChooseFont はエラー状態を示す必要があります。 |
|
[フォント] を選択すると、[フォント] コントロール パネルで [非表示] に設定されているフォントも表示されます。 Windows Vista および Windows XP/2000: このフラグは、Windows 7 までサポートされていません。 |
|
ChooseFont では 、 lpLogFont メンバーが指す構造体を使用して、ダイアログ ボックス コントロールを初期化する必要があります。 |
|
ChooseFont では、nSizeMin メンバーと nSizeMax メンバーによって指定された範囲内のフォント サイズのみを選択する必要があります。 |
|
CF_NOVECTORFONTS フラグと同じです。 |
|
LOGFONT 構造体を使用してダイアログ ボックス コントロールを初期化する場合は、このフラグを使用して、ダイアログ ボックスにフォント名コンボ ボックスの初期選択が表示されないようにします。 これは、テキストの選択に適用されるフォント名が 1 つもない場合に便利です。 |
|
[スクリプト] コンボ ボックスを無効にします。 このフラグを設定すると、LogFONT 構造体の lfCharSet メンバーは、ChooseFont が返されたときにDEFAULT_CHARSETに設定されます。 このフラグは、ダイアログ ボックスを初期化するためにのみ使用されます。 |
|
ChooseFont は、フォント シミュレーションの表示または選択を許可しません。 |
|
構造体を使用してダイアログ ボックス コントロールを初期化する場合は、このフラグを使用して、ダイアログ ボックスに [ フォント サイズ ] コンボ ボックスの初期選択が表示されないようにします。 これは、テキストの選択に適用されるフォント サイズが 1 つもない場合に便利です。 |
|
LOGFONT 構造体を使用してダイアログ ボックス コントロールを初期化する場合は、このフラグを使用して、ダイアログ ボックスに [フォント スタイル] コンボ ボックスの初期選択が表示されないようにします。 これは、テキストの選択に適用されるフォント スタイルが 1 つもない場合に便利です。 |
|
ChooseFont では、ベクター フォントの選択を許可しないでください。 |
|
[ フォント ] ダイアログ ボックスに水平方向のフォントのみが一覧表示されます。 |
|
フォント列挙の場合、このフラグは無視されます。
Windows Vista および Windows XP/2000: ダイアログ ボックスに、 hDC メンバーによって識別されるデバイス コンテキストまたは情報コンテキストに関連付けられているプリンターでサポートされているフォントのみが一覧表示されます。 また、[フォント ] ダイアログ ボックス の下部にフォントの種類の説明ラベルが表示されます。 |
|
ChooseFont でスケーラブルなフォントの選択のみを許可するように指定します。 スケーラブルなフォントには、ベクター フォント、スケーラブルなプリンター フォント、TrueType フォント、他のテクノロジによってスケーリングされたフォントが含まれます。 |
|
フォント列挙の場合、このフラグは無視されます。
Windows Vista および Windows XP/2000: ダイアログ ボックスに、システムでサポートされている画面フォントのみが一覧表示されます。 |
|
ChooseFont では、すべての OEM 以外の文字セットとシンボル文字セット、および ANSI 文字セットに対してフォントを選択できるようにする必要があります。 これは 、CF_ANSIONLY 値よりも優先されます。 |
|
入力時に指定すると、LOGFONT 構造体の lfCharSet メンバーで識別される文字セットを持つフォントのみが表示されます。 ユーザーは、[スクリプト] コンボ ボックスで指定された文字セット を 変更することはできません。 |
|
ダイアログ ボックスに [ヘルプ ] ボタンが表示されます。 hwndOwner メンバーは、ユーザーが [ヘルプ] ボタンをクリックしたときにダイアログ ボックスが送信する HELPMSGSTRING 登録済みメッセージを受信するウィンドウを指定する必要があります。 |
|
ChooseFont では、TrueType フォントの選択のみを列挙して許可する必要があります。 |
|
lpszStyle メンバーは、ChooseFont が [フォント スタイル] コンボ ボックスの初期化に使用するスタイル データを含むバッファーへのポインターです。 ユーザーがダイアログ ボックスを閉じると、 ChooseFont は ユーザーの選択範囲のスタイル データをこのバッファーにコピーします。
メモアプリケーションをグローバル化するには、lpLogFont が指す LOGFONT 構造体の lfWeight メンバーと lfItalic メンバーを使用してスタイルを指定する必要があります。 スタイル名は、システム のユーザー インターフェイス言語によって変更される場合があります。
|
|
互換性のために残されています。 ChooseFont は 、このフラグを無視します。
Windows Vista および Windows XP/2000: ChooseFont では、プリンターとディスプレイの両方で使用できるフォントの選択のみを許可する必要があります。 このフラグを指定する場合は、 CF_SCREENSHOTS と CF_PRINTERFONTS、または CF_BOTH フラグも指定する必要があります。 |
rgbColors
種類: COLORREF
CF_EFFECTS フラグが設定されている場合、rgbColors は初期テキストの色を指定します。 ChooseFont が正常に返されると、このメンバーには、ユーザーが選択したテキストの色の RGB 値が含まれます。 COLORREF カラー値を作成するには、RGB マクロを使用します。
lCustData
型: LPARAM
システムが lpfnHook メンバーによって識別されるフック・プロシージャーに渡すアプリケーション定義データ。 システムが WM_INITDIALOG メッセージをフック・プロシージャーに送信する場合、メッセージの lParam パラメーターは、ダイアログの作成時に指定された CHOOSEFONT 構造体へのポインターです。 フック プロシージャでは、このポインターを使用して lCustData 値を取得できます。
lpfnHook
種類: LPCFHOOKPROC
ダイアログ ボックス用のメッセージを処理できる CFHookProc フック プロシージャへのポインター。 CF_ENABLEHOOK フラグがFlags メンバーに設定されていない限り、このメンバーは無視されます。
lpTemplateName
種類: LPCTSTR
hInstance メンバーによって識別されるモジュール内のダイアログ ボックス テンプレート リソースの名前。 このテンプレートは、標準のダイアログ ボックス テンプレートに置き換えられます。 番号付きダイアログ ボックス リソースの場合、 lpTemplateName には MAKEINTRESOURCE マクロによって返される値を指定できます。 CF_ENABLETEMPLATE フラグがFlags メンバーに設定されていない限り、このメンバーは無視されます。
hInstance
種類: HINSTANCE
CF_ENABLETEMPLATEHANDLE フラグが Flags メンバーに設定されている場合、hInstance はダイアログ ボックス テンプレートを含むメモリ オブジェクトへのハンドルです。 CF_ENABLETEMPLATE フラグが設定されている場合、hInstance は lpTemplateName メンバーによって名前付けされたダイアログ ボックス テンプレートを含むモジュールへのハンドルです。 CF_ENABLETEMPLATEHANDLEもCF_ENABLETEMPLATEも設定されていない場合、このメンバーは無視されます。
lpszStyle
種類: LPTSTR
スタイル データ。 CF_USESTYLE フラグが指定されている場合、ChooseFont は、このバッファー内のデータを使用して、[フォント スタイル] コンボ ボックスを初期化します。 ユーザーがダイアログ ボックスを閉じると、 ChooseFont は [ フォント スタイル ] コンボ ボックスの文字列をこのバッファーにコピーします。
nFontType
種類: WORD
ChooseFont が返されるときに選択したフォントの種類。 このメンバーには、次の値の 1 つ以上を指定できます。
値 | 意味 |
---|---|
|
フォントの太さは太字です。 この情報は LOGFONT 構造体の lfWeight メンバーに複製され、FW_BOLDと同じです。 |
|
斜体フォント属性が設定されています。 この情報は、LOGFONT 構造体の lfItalic メンバーに複製されます。 |
|
フォントはプリンター フォントです。 |
|
フォントの太さは標準です。 この情報は、LOGFONT 構造体の lfWeight メンバーで複製され、FW_REGULARと同じです。 |
|
フォントは画面フォントです。 |
|
フォントは、グラフィックス デバイス インターフェイス (GDI) によってシミュレートされます。 |
___MISSING_ALIGNMENT__
nSizeMin
型: INT
ユーザーが選択できるポイント サイズの最小値。 ChooseFont は 、 CF_LIMITSIZE フラグが指定されている場合にのみ、このメンバーを認識します。
nSizeMax
型: INT
ユーザーが選択できるポイント サイズの最大値。 ChooseFont は 、 CF_LIMITSIZE フラグが指定されている場合にのみ、このメンバーを認識します。
注釈
注意
commdlg.h ヘッダーは、UNICODE プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして CHOOSEFONT を定義します。 エンコードに依存しないエイリアスをエンコードニュートラルでないコードと組み合わせて使用すると、コンパイルまたはランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「 関数プロトタイプの規則」を参照してください。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 2000 Professional [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows 2000 Server [デスクトップ アプリのみ] |
Header | commdlg.h |
こちらもご覧ください
概念
参照