通知
すべてクリア
Topic starter
2002年8月15日 6:12 PM
コンボボックスの項目を選択できないようにしたくて、今は、
m_cmbBox.EnableWindow(FALSE);
を使っていますが、これを使うとコンボボックスの項目の字の色が
薄くなってしまいます。
なんとかして、字を黒色のまま保ちたいのですが、どうしたらいいでしょう?
教えてください。お願いします。
2002年8月21日 9:00 PM
void CComboBoxDlg::OnButton1()
{
// TODO: この位置にコントロール通知ハンドラ用のコードを追加してください
m_cmbBox.EnableWindow(FALSE);
に続けて
CEdit* pComboEdit=(CEdit*)(GetDlgItem( IDC_COMBO1 )->GetWindow(GW_CHILD ));
pComboEdit->EnableWindow( TRUE );
pComboEdit->SetReadOnly(); //この行はなくても同じ
とさらに
pComboEdit = (CEdit*) pComboEdit->GetWindow(GW_HWNDNEXT /*GW_HWNDLAST*/);
pComboEdit->EnableWindow( TRUE );
を追加すると、白地に黒の文字のコンボボックスで、
かつ選択できない状態になりました。
参考ページ
無効化テキストを黒で表示する
http://niigata.cool.ne.jp/minamix/winctrl/combo/disabledcombo.htm
2002年8月21日 9:11 PM
追記です。
参考ページにもありますが、コンボボックスのスタイルは
標準でないとダメみたいです。m(__)m