我有32个复选框,需要启用所有复选框。我可以使用以下方法单独进行操作:

CButton* button;


button = (CButton *)GetDlgItem(IDC_CHECK1);
button->SetCheck(BST_CHECKED);
button = (CButton *)GetDlgItem(IDC_CHECK2);
button->SetCheck(BST_CHECKED);


...

有没有一种方法可以一次或全部循环执行此操作,即使这是一个定义,我也可以递增支票号。

最佳答案

在resource.h文件中,将IDC_CHECK1和IDC_CHECK2定义为DWORD,可以按顺序编号定义它们,然后使用for循环来获取它们:

for(int index=0;index<100;index++)
{
  CButton* button = (CButton *)GetDlgItem(baseid+index);
   .......
}

07-24 14:03