Я использую Visual Studio 2010 и имею 10 флажков в моей форме и создал переменные для каждого из них, назвав m_CheckBox1, m_CheckBox2, m_CheckBox3.... m_CheckBox10, а также для полей редактирования (m_EditBox1... и так далее).
Я хочу проверить, отмечены ли флажки в цикле, и если значение поля редактирования не является желательным, отобразится ошибка в поле сообщения. Если это значение в порядке, перейдите к следующему флажку и в поле редактирования. Как я могу перейти к следующему флажку, просто как
for (i=1;i < 11 ;i++)
{
is_checked = m_Checkboxi.GetCheck();
if is_checked==1
{do sth. with m_EditBox(i)}
else
do sth.
}
благодаря
Избавьтесь от этих 10 переменных и поместите в массив:
CButton m_CheckBox [10];
Также отредактируйте файл resource.h, если необходимо, чтобы сделать 10 идентификаторов последовательными. Вам нужно будет заменить вызовы DDX_Control в DoDataExchange, чтобы использовать массив в цикле:
CDialog::DoDataExchange(pDX);
for (int i = 0; i < 10; i++)
DDX_Control(pDX, IDC_CHECK1 + i, m_CheckBox[i]);