VC++6.0です。
hCheckWnd = CreateWindow("BUTTON","checkbox",
WS_CHILD | WS_VISIBLE | BS_CHECKBOX,
0,0,100,50,
hWnd,NULL,hInst,NULL);
で作成したチェックボックスのテキストが背景色から浮いてしまい困っています。
背景色に透過させるか色を指定して背景色と同色にするか出来ればいいのですが方法がわからずにいます。
宜しくお願いします。
http://forums.belution.com/ja/vc/000/209/78s.shtml
参考にどうぞ。
って既に紹介されてますけどね。
WM_CTLCOLORDLG:
WM_CTLCOLORSTATIC: などのメッセージで、
関数 SetBkMode(hDC, TRANSPARENT); // 背景を透過
及び
HBRUSH hbkgnd = NULL;として、
if( !hbkgnd){
LOGBRUSH lb;
lb.lbStyle = BS_HOLLOW ;
hbkgnd = CreateBrushIndirect( &lb );
} //if( !hbkgnd)
return( ( LRESULT ) hbkgnd );
これでチェックボックスのテキスト部分を透過処理できるとおもいます。
細かいことは以下を参考程度に、
http://www17.plala.or.jp/page-zero/programming-w.html
ありがとうございました。
2箇所のホームページともに大変参考になりました!
ツイート | ![]() |