エディットボックス
VC++、APIでwindowsプログラムを書いています。ダイアログボックスで質問があります。
case WM_INITDIALOG:
SetDlgItemText(hDlg, IDC_EDIT1, "0");
return TRUE;
で読み取り専用エディットボックス内に初期値を書き
case WM_CTLCOLORSTATIC:
{
HDC hdc = (HDC)wParam ;
SetTextColor( hdc, RGB( 255, 255, 255)) ;// 白色
SetBkMode(hdc, TRANSPARENT); // 背景を透過
return (BOOL)(HBRUSH)GetStockObject(NULL_BRUSH) ;
}
でダイアログボックス内のスタティックテキストと読み取り専用エディットボックスの背景を同時に透過させているのですが、エディットボックス内の文字を
void ddd( HWND hDlg, int xxx)
{
char ttt[100];
sprintf(ttt,"%d",xxx);
SetDlgItemText(hDlg, IDC_EDIT1, ttt);
return ;
}
で書き換えると古いテキストが残ったように表示されます(背景に色を指定すれば古いテキストは残らない)。
うまく表示させるにはどういった方法があるでしょうか?
ご存知の方、よろしくお願いします。
ちなみにダイアログボックスにはビットマップが貼ってあります。
お礼
設定ファイルでinputと検索しそれらしきものの文字コードを消したら透過されました。 有難うございましたm(_ _)m