ComboBoxを編集不可にするには?

[戻る]
めらんこりー [E-Mail] 2001/08/22(水) 02:40:10
初めて質問させていただきます。
【環境】
VC++ 6.0 SPなし
win2000

ComboBoxにInsertStringで追加したテキスト(文字列)を、
変更させない様(編集不可)にしたいのですが、闇雲に以下
のようにしました。

ComboBox:IDC_COMB_ID
変数(コントロール):m_combId
【ソース】
void CBasicDlg::OnEditchangeCombId() 
// もしくはvoid CBasicDlg::OnEditupdateCombId() 
{
  int iIndex = m_combId.GetCurSel();
  m_combId.SetCurSel(iIndex);
}

【問題】
上記のように関数を用意しても、ComboBoxに直に編集させると、
1回目は大丈夫なのですが、2回目に変更を行うと、GetCurSelが
0xFFFFFFFFで返ってきてしまいます。この他にも、GetLBText
で文字列を持ってきて表示し直したり、SetWindowTextで表示
させたりしたのですが、必ず2回目の変更で、同様の値が返って
きてしまいます。
ComboBoxのプロパティにも”変更不可”の様なな設定も無いし・・・

どなたかお分かりでしたら、お教えください。

もんもん 2001/08/22(水) 15:50:00
はじめまして。
ちと気分転換にVCサイト回ってたらここに行きつきました。
これからちょくちょく見ていこうと思います。

>ComboBoxのプロパティにも”変更不可”の様なな設定も無いし・・・

ドロップダウンリストのことかな?
コンボボックスのプロパティのスタイルタブのタイプをドロップダウンリストにするとか?

めらんこりー 2001/09/22(土) 17:56:04
[[解決]]
返事遅くなりました。

もんもんさんの、仰る通りでした。
ありがとうございます。

古いスレッドには追加発言できません。