Win32 WTL Tips No.2 / チェックボックスにチェックする 解除する
Win32API
SendMessage(Window handle, BM_SETCHECK, TRUE or FALSE, 0L);
TRUEでチェック
FALSEでチェック解除
Window handle = google:HWND型のウィンドウハンドル
ちなみにチェック状態を取得する場合は
のようにして変数rに値を入れます。
BOOL r = SendMessage(Window handle, BM_GETCHECK, 0, 0L);
このようにSendMessageはいちいち面倒なのでWTLにはCButtonというクラスが用意されています。
例えば
内で
class CMainDlg
を宣言し、
CButton check1;
内で
CMainDlg::OnInitDialog()
のようにしてCButtonクラスを初期化して使います。
check1 = GetDlgItem(ID_CHECK1);
そうすると
のようにしてID_CHECK1のIDが付いているチェックボックスを操作することが出来ます。
check1.SetCheck(TRUE);
BOOL r = check1.GetCheck();