コンボボックスのフォーカスについて

[戻る]
DAM 2010/12/15(水) 16:02:17
あるタイミングで、コンボボックスにフォーカスが当たっている場合を
判定したく、以下のように記述したんですが、うまくいきません。

if(GetFocus() == GetDlgItem(IDC_CMB_PARAM))
{
    処理;
}

※IDC_CMB_PARAM = コンボボックスのリソースIDです。


同じような書き方で、エディットボックスはうまく判定出来るのですが、
何か別の方法でフォーカス判定しないといけないのでしょうか?

またはコンボボックス自体のプロパティをいじらないといけないのでしょうか?

よろしくお願いいたします。
ちなみにVC++2005です。

DAM 2010/12/15(水) 16:43:59
[[解決]]
すいません、自己解決です。

コンボボックスのプロパティにて、Typeを「ドロップダウンリスト」にすると
上記方法で判定出来ました。
「ドロップダウン」ではダメなようです。

違いについてはまた調べてみたいと思います。

失礼いたしました。

瀬戸っぷ [E-Mail] 2010/12/15(水) 17:09:19
「ドロップダウン」だと、コンボボックスコントロール内の「エディットコントロール」
または「リストボックス」にフォーカスが設定されるから…ではないですかね?

「ドロップダウンリスト」でも、[▼]ボタンなどでリストを表示している場合はフォーカ
スが別になるような気がしないでもないですが…。

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