基于MFC按钮逻辑
void CSUCCES1Dlg::SetDlgItemState()//IDC_BTN_INIT初始化按钮
{
GigeState state = GigeState::ARV_NONE;//GigeState是一个枚举类型,stat状态为ARV_NONE
int idx = ((CListBox*)GetDlgItem(IDC_LIST_GIGE))->GetCurSel();//GetDlgItem 是 MFC 框架提供的一个成员函数,其作用是获取对话框中指定 ID 控件的句柄获取列表框 IDC_LIST_GIGE 中当前选中项的索引。
int nCount = ((CListBox*)GetDlgItem(IDC_LIST_GIGE))->GetCount();//此代码用于获取列表框中所有项的数量,nCount:获取列表框 IDC_LIST_GIGE 中的项目数量。
if (nCount > 0 && idx < 0)//当列表不为0,且没有选中任何设备时进入循环
{
((CListBox*)GetDlgItem(IDC_LIST_GIGE))->SetCurSel(0);//将列表框的第一个项目设置为选中项,并更新 idx 的值。
idx = ((CListBox*)GetDlgItem(IDC_LIST_GIGE))->GetCurSel();//GetCurSel()用于获取列表框(CListBox)或组合框(CComboBox)中当前选中项的索引
}
if (idx >= 0) state = GigeState::ARV_INIT; //先将状态设置为 ARV_INIT,ARV_INIT状态为int型为1
if (m_curGig