经常会遇到对多个控件赋初始值或配置参数,操作方法都一样,但因各控件的ID不同,必须一个一个的写,很麻烦。
下面介绍的方法就是将多个控件在for语句中执行同一操作,大大简化了代码编写量:
示例:将多个控件同时使能或屏蔽的函数:
<span style="font-size:18px;">void CHID_BlinkyDlg::EnableDeviceCtrls(BOOL bEnable)
{
int nIDs[] =
{
IDC_RADIO_PATTERN_CUSTOM,
IDC_RADIO_PATTERN_SELECTOR,
IDC_SLIDER_DIMMER,
IDC_BUTTON_GET_STATS,
IDC_BUTTON_SET_BLINK_PATTERN,
IDC_BUTTON_SET_BLINK_RATE,
IDC_BUTTON_ENABLE,
IDC_BUTTON_DISABLE
};
for (int i = 0; i < sizeof(nIDs) / sizeof(nIDs[0]); i++)
{
GetDlgItem(nIDs[i])->EnableWindow(bEnable);
}
}</span>
重点就是使用各个控件的控件ID。