コントロール

ボタンのテキストを変えてみます。

ボタンのテキストを変える(win313)

青い部分だけ見てください。

//
//	MyApp.h
//


class MyApp : public MyMainWnd{
public:
	// WM_COMMAND
	void wmCommand(WPARAM wp){
		int wmId = LOWORD(wp);
		
		switch(wmId){
		case IDC_BUTTON1:				// ボタンID
			HWND hBtn;
			static int i = 0;
			
			hBtn = GetDlgItem(hWnd, IDC_BUTTON1);	// ウィンドウハンドル
			if(i == 0){
				SetWindowText(hBtn, TEXT("1")); 		// キャプション
				i = 1;
			}else{
				SetWindowText(hBtn, TEXT("0")); 		// キャプション
				i = 0;
			}
			break;
		}
	}
};

実行画面です。 ボタンを押すたびにテキストが変わります。

解説

ボタンのテキストを変える方法です。 これは、キャプションを変更するということです。

まず、ボタン用の変数を用意します。 これをハンドルと言います。 ハンドルを使って操作するのです。

HWND hBtn;

ボタンのハンドルを得るには、GetDlgItem 関数を使います。 ボタンにとって親になるメインウィンドウとボタンの番号を代入します。 メインウィンドウ=hWnd です。

hBtn = GetDlgItem(hWnd, IDC_BUTTON1);	// ウィンドウハンドル

テキスト(キャプション)を変えるには、SetWindowText関数を使います。 hBtn を代入します。

SetWindowText(hBtn, TEXT("1")); 		// キャプション

[前] [目次] [次]