[PR]

出力書式の使えるメッセージボックス

戻る

 出力書式の使える、メッセージボックス表示関数を作る。

//*********************************************************
//  出力書式の使える、メッセージボックス表示関数
//*********************************************************
int 
MesBox
	(
		      HWND  hWnd,      // メッセージボックスのオーナー
		      UINT  uType,     // メッセージボックスのタイプ
		const char *lpCaption, // メッセージボックスのタイトル文字列
		const char *format,    // 出力変換書式
		            ...        // 可変個の引数
	)
{
	int     result;         // メッセージボックスの返値
	char    string[ 1024 ]; // 実際に表示する文字列
	va_list argptr;         // 引数の並び(...)へのポインタ

	va_start( argptr, format );         // 引数の並びの初期化
	vsprintf( string, format, argptr ); // sprintf( String, format, ... ); と同じ

	result = MessageBox( hWnd, string, lpCaption, uType );

	va_end( argptr ); // 引数の並びの破棄

	return result;
}//MesBox

使用例

 入力:
  MesBox( HWND_DESKTOP,
            MB_OK | MB_ICONINFORMATION,
            "test",
            "%s - %d %c %d",
            "10", 9, '=', 10-9 );
 出力:
    +--------------------------+
    |  test               [X]  |
    |--------------------------|
    |                          |
    |  (!)  10 - 9 = 1         |
    |                          |
    |          [ OK ]          |
    +--------------------------+

関連

printf, fprintf, sprintf 使用上の注意
dbgprintf マクロを使う


Google
ご意見・ご感想をお聞かせ下さい。匿名で送信できます。

 * 返信が必要な場合には postmaster@katsura-kotonoha.sakura.ne.jp へ直接メールしてください。

水無瀬 優 postmaster@katsura-kotonoha.sakura.ne.jp
『新妻LOVELY×CATION』を応援しています!