[VC++6.0]
[windowsXP]
初めまして。
EditBoxを入力不可にしたいのですが、プロパティにて読み取り専用に設定すると背景色がグレイになってしまいます。
背景色を白のまま読み取り専用にしたいのですがどなたかご存知の方教えて下さい。
グレイでないのに入力できないエディットは、
Windows のルール違反だし、不親切で使いにくいUIじゃないかな。
その上でなお強行したいなら
・変更通知で元文字列を上書き
・WM_CHAR 等を捨てる
これでわからないなら素直にグレイにした方がいいんじゃない?
はい。わかりました。ありがとうございました。
↑よりは、まともな方法として、
CDialog::OnCtlColor()で、nCtlColor == CTLCOLOR_STATICの場合を
捕まえて、WHITE_BRUSHを返してやることで、背景を白に出来ます。
> CDialog::OnCtlColor()で、nCtlColor == CTLCOLOR_STATICの場合を
> 捕まえて、WHITE_BRUSHを返してやることで、背景を白に出来ます。
コントロールも識別しないと、他のスタティックまで変わるので注意されたし。
ツイート | ![]() |