チェックボックスの状態の取得

[戻る]
potu 2002/07/29(月) 17:53:51
potuです。いつもお世話になっています。

今回の質問は、基本的なことなのですが「チェックボックスの状態の取得」です。
「OK」ボタンを押すと、同じダイアログにあるチェックボックスの状態を取得して、
それぞれの処理を行わせたいと思っています。


過去ログ
http://rararahp.cool.ne.jp/cgi-bin/lng/vc/vclng.cgi?print+200009/00090029.txt
でこの話があったのですが、私には難しいものでした。

「CCheckListBox::GetCheck」で、「nIndex(チェック状態を取得するアイテムのインデック
ス)」の取得の仕方もわからない初心者です。


環境は、Win2000, VC6.0, MFC使用です。

どなたかご存知でしたら、教えてください。

dairygoods 2002/07/29(月) 18:03:43
> 「CCheckListBox::GetCheck」で、

これは、チェック付きリストボックスです(リストボックスの
各項目にチェックがついているもの)が、
potu さんが取得したいのは、「チェックボックス」ですよね?

もしそうなら、クラスウィザードの[メンバ変数]で、
チェックボックスに対して、BOOL変数を割り当てれば
UpdateData()を呼び出すと、チェック状態がその変数に設定されます。

不良PG [E-Mail] 2002/07/29(月) 18:30:08
dairygoodsさんの
>もしそうなら、クラスウィザードの[メンバ変数]で、
>チェックボックスに対して、BOOL変数を割り当てれば
>UpdateData()を呼び出すと、チェック状態がその変数に設定されます。
も、できますが別の方法で

CWnd::IsDlgButtonChecked

引数には、チェックボックスのIDを入れましょう



??? C???Dialog::????( ??? )
{
   if( IsDlgButtonChecked( IDC_BUTTON_??? ) )
   {
     //チェックされている場合の処理
   }
   else
   {
   //チェックされていない場合の処理
   }
}

potu 2002/07/29(月) 19:21:17
[[解決]]
dairygoods さん、不良PGさん レスありがとうございます。

dairygoodsさんのおっしゃる通り、私が勘違いをしてました(^^;

お二人に教えていただいた方法でしたら、無事に取得できました。

ありがとうございました m(__)m

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