MFC ListBox控件:CCheckListBox如何通知“复选框状态已更改”?

时间:2011-04-05 06:04:35

标签: mfc

CCheckListBox如何通知“复选框状态已更改”?

感谢.....

1 个答案:

答案 0 :(得分:5)

当用户更改CCheckListBox中的复选框状态时,会将未记录的MFC特定消息发送到父窗口:CLBN_CHKCHANGE。 我们可以像以下示例一样处理此消息:

 // MyDialog.h
 class CMyDialog : public CDialog
 {
   // ...
   afx_msg void OnCheckChangeMyList();
 };

  // MyDialog.cpp
  // ...
   ON_CONTROL(CLBN_CHKCHANGE, IDC_MY_LIST, OnCheckChangeMyList)
  END_MESSAGE_MAP()

   void CMyDialog::OnCheckChangeMyList()
  {
     // got it!
  }

注意:我们可以直接使用ON_CLBN_CHKCHANGE宏来代替ON_CONTROL。

   // ...
     ON_CLBN_CHKCHANGE(IDC_MY_LIST, OnCheckChangeMyList)
   // ...