チェックボックスの背景を透明にする方法をググってみたり、いろいろ試したみたりしたけどうまく行かなかった。とりあえずタブの背景と同じ色(白)をセットしておくことにした。
case WM_CTLCOLORDLG:
case WM_CTLCOLORSTATIC:
case WM_CTLCOLORBTN:
case WM_CTLCOLOR:
SetBkMode((HDC)wParam,TRANSPARENT);
return (LRESULT)GetStockObject( /* NULL_BRUSH */WHITE_BRUSH );
ブラシを白にしたらチェックボックスの背景はきちんと白で塗りつぶされている。NULL_BRUSHの時だけ動作がおかしいとなるとこれってコモン・コントロールのBUGとかだろうか。それとも何か初期化で足りないとか。。