コンボボックスの中のエディットボックスの背景色を変えたい – プログラミング – Home

コンボボックスの中のエディットボックス...
 
通知
すべてクリア

[解決済] コンボボックスの中のエディットボックスの背景色を変えたい


天然
 天然
(@天然)
ゲスト
結合: 22年前
投稿: 16
Topic starter  

いつも参考にしています。
環境 win2000/VC++6.0/MFCです

ドロップダウンリストのコンボボックスを使用していてリストを選択した後のコンボの中のエデ
ィットボックスの背景色を変えたいのですが、何方かお教えください。
普通は、リストを選択した後はエディットボックスの背景色は青色になると思うのですが、
これを、白にしたいのです。
宜しくお願いします。


引用未解決
トピックタグ
秋衛門
 秋衛門
(@秋衛門)
ゲスト
結合: 22年前
投稿: 6
 

リストの選択後、フォーカス外したらいい、とかそんな話? ちゃう?
他には、ディスプレイの照度を限界まであげたら白っぽく見えるよ。だめかね?


返信引用
天然
 天然
(@天然)
ゲスト
結合: 22年前
投稿: 16
Topic starter  

秋衛門さんご返信ありがとうございます。
数日前に発言したのに何方からも返信がなくて難しい質問をしたのか意味が分からなかったのか
どちらかだと思うのですが、ずっとあきらめていました。で久しぶりにサイトを開いたら返信が
あったので良かったです。

感想はこのぐらいにして本題に入ります。
コンボのリストの選択後のフォーカスをはずしたいのですが、OnKillFocusは使用しないでフォ
ーカスをはずす処理はないでしょうか?
宜しくお願いします。


返信引用
ku
 ku
(@ku)
ゲスト
結合: 25年前
投稿: 312
 

> 普通は、リストを選択した後はエディットボックスの背景色は青色になると思うのですが、
これはフォーカスを失えば良いのか、
フォーカスを持っている場合の色を指定したいのかどちらかなのか分からない

フォーカスを失いたいなら、他のコントロールへSetFocus()すればよいと思う

フォーカスを持っている時の背景色を変更したいのなら
このページを参考にしてうまく作ればできそうな感じです
http://www.athomejp.com/goldfish/mfc/combo/2lineitem.html
最後の方にあるDarwItem()のときに
if (lpDrawItemStruct->itemState & ODS_COMBOBOXEDIT) {が真の場合
CBrushの色を指定すれば良さそうだけど


返信引用
...
 ...
(@...)
ゲスト
結合: 22年前
投稿: 113
 

2ch風に言うなら

age


返信引用
いっぽ
 いっぽ
(@いっぽ)
ゲスト
結合: 22年前
投稿: 1
 

なんでageるの?
ageちゃいけないって意味ではなく、
何でageる必要があるのって意味


返信引用
天然
 天然
(@天然)
ゲスト
結合: 22年前
投稿: 16
Topic starter  

皆さんありがとうございました。


返信引用
SunPac
 SunPac
(@SunPac)
ゲスト
結合: 22年前
投稿: 105
 

フォーカスをコンボから移したいと仮定します。

まずそのダイアログがモーダルかモードレスか分かりませんが、
もしモーダルの場合はダイアログ自体のフォーカスは失えません。
そこで同じダイアログの他のコントロールにフォーカスを移せばいいわけです。
例えばOKボタン(あれば、ですけど)とか。
私はMFC使わないのでAPI流ですが、GetDlgItem()でダイアログのコントロールの
ハンドルを取得してSetFocus()すればコンボボックスのフォーカスは失います。
タイミングはWM_COMMAND(OnCommand()ハンドラでしたっけ?)でCBN_SELENDOKが
きた時です。
MFCじゃないけど参考になれば幸いです。


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました