戻る 第5章 テキスト表示 次へ

ソース 実行ファイル
sdk05.cpp sdk05.exe

Windowの表示は出来ましたけど中には何も表示されていません
ちょっとこれではつまらないですね。

とりあえず何か字を表示させて見ましょう。
例によって画面写真を載せます。

字を出すだけですけど実は覚えなければいけないことが少しあります。
それは「デバイスコンテキスト」という用語・概念です。
関数では
GetDC(HWND)デバイスコンテキストの取得
ReleaseDCデバイスコンテキストの返却
BeginPaint(HWND, HDC)WM_PAINT用のデバイスコンテキストの取得
EndPaint(HWND, PAINTSTRUCT)WM_PAINT用のデバイスコンテキストの返却
この4つです。

このデバイスコンテキストといったもの説明は実はかなり深い話になります。
ですから詳しい説明はまた今後の機会にします。
今回は「描画をするにはデバイスコンテキストと言ったものが必要になる。」
とだけ覚えてください。

#include <windows.h>

LRESULT CALLBACK WinProc(HWND hwnd, UINT msg,WPARAM wP, LPARAM lP)
{
	HDC	hdc;
	PAINTSTRUCT ps;
	char str[40];
	switch(msg){
		case WM_PAINT:
			//デバイスコンテキストを取得して描画する
			//処理が終わるとデバイスコンテキストは返す
			wsprintf(str,"TEXT Sample");
			hdc = BeginPaint(hwnd,&ps);
			TextOut(hdc,32,32,str,strlen(str));
			EndPaint(hwnd,&ps);
			break;
		case WM_DESTROY:
			PostQuitMessage(0);
			break;
		default:
		return DefWindowProc(hwnd, msg, wP, lP);
	}
	return 0;
}

復習問題:
1.表示される文字を変えてみましょう。
2.表示される場所(座標)を変えてみましょう。