循环检查或编辑框

时间:2013-10-30 15:10:20

标签: c++ visual-studio-2010 visual-c++ checkbox mfc

我正在使用Visual Studio 2010并在我的表单上有10个复选框,并通过命名m_CheckBox1,m_CheckBox2,m_CheckBox3 .... m_CheckBox10以及编辑框(m_EditBox1 ......等等)为每个复选框创建变量。

我想检查是否在循环中选中了复选框,如果编辑框值不合适,将显示消息框错误。如果值为OK,则转到下一个复选框和编辑框。如何移动到下一个复选框,就像

一样
    for (i=1;i < 11 ;i++)
         {
           is_checked = m_Checkboxi.GetCheck();
            if is_checked==1
              {do sth. with m_EditBox(i)}
            else
             do sth.
        }

由于

1 个答案:

答案 0 :(得分:1)

摆脱这10个变量并放入一个数组:

CButton m_CheckBox [10];

如果需要,还要编辑resource.h文件以使10个ID连续。您必须替换DoDataExchange中的DDX_Control调用才能在循环中使用该数组:

CDialog::DoDataExchange(pDX);
for (int i = 0; i < 10; i++)
    DDX_Control(pDX, IDC_CHECK1 + i, m_CheckBox[i]);