【问题标题】:How to check and uncheck and enable and disable a check Box control in MFC如何在 MFC 中选中和取消选中以及启用和禁用复选框控件
【发布时间】:2015-08-01 18:02:27
【问题描述】:

使用 Visual C++ MFC 复选框控件执行标准复选框操作的源代码是什么?

  • 在显示的复选框控件中设置检查
  • 清除显示的复选框控件中的复选
  • 为用户输入启用显示的复选框控件
  • 为用户输入禁用显示的复选框控件

【问题讨论】:

    标签: visual-c++ checkbox mfc


    【解决方案1】:

    在 MFC 中控制复选框

    以下是在 MFC 中选中、取消选中、启用和禁用复选框的方法:

        CButton* pBtn = (CButton*) GetDlgItem(IDC_SETUP_AM);
          pBtn->SetCheck(0);// uncheck it
          CButton* pBtn = (CButton*) GetDlgItem(IDC_SETUP_AM);
          pBtn->SetCheck(1);// check it
          CButton* pBtn = (CButton*) GetDlgItem(IDC_SETUP_AM);
          pBtn->EnableWindow(0);// disable it
          CButton* pBtn = (CButton*) GetDlgItem(IDC_SETUP_AM);
          pBtn->EnableWindow(1);// enable it
          bool isRemoveChecked = IsDlgButtonChecked(IDC_removeProf);
    

    【讨论】:

    • 我知道我迟到了,但直接使用它也应该可以工作,测试启用/禁用复选框。启用 - GetDlgItem(IDC_SETUP_AM)->EnableWindow(TRUE); 禁用 - GetDlgItem(IDC_SETUP_AM)->EnableWIndow(FALSE);
    【解决方案2】:

    或者,如果您使用CWnd::CheckDlgButton 选中/取消选中按钮,则不需要检索指向按钮(复选框)的指针,例如:

    BOOL isChecked = ...
    CheckDlgButton(IDC_SOME_ID, isChecked);
    

    而且,启用/禁用可以简化为:

    BOOL isEnabled = ...
    GetDlgItem(IDC_SOME_ID)->EnableWindow(isEnabled);
    

    【讨论】:

      猜你喜欢
      • 2013-01-19
      • 2013-11-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-08-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多