VS2010 MFC 怎么通过控件的名称获得控件的指针
VS2010 MFC 如何通过控件的名称获得控件的指针?
实际问题是这样的:比如窗口中有很多个CheckBox控件,我分别把他们命名成CheckBox_1、CheckBox_2、CheckBox_3以此类推。现在我要依次判断这些CheckBox有没有被选中,控件很多,所以我想用一个 for 循环,用循环变量 i 来指定,这样可以减少代码量,又容易改。
这个问题以前用 C# 和 Qt 也遇到过,比如 Qt 中可以这样:QLabel *l = this->findChild<Qlable *>("lable name");
PS:这也是****的大神教的。
但是今天google,baidu找了半天也没找到MFC中类似的方法,有望用过的大神,帮忙指点!!
补充:我要的不是 GetDlgItem(),因为GetDlgItem( int )的参数是 int 型只能通过控件ID号获得控件的指针;我想要的是通过控件的 “名称”获得指针。谢谢!!!
------解决方案--------------------
CheckBox_1....CheckBox_n地址装入一个数组中
------解决方案--------------------
你把这些CheckBox的ID设置为连续的ID,一个for循环就可以完成了。IsDlgButtonChecked
------解决方案--------------------
放到一个group,这样就可以循环判断
实际问题是这样的:比如窗口中有很多个CheckBox控件,我分别把他们命名成CheckBox_1、CheckBox_2、CheckBox_3以此类推。现在我要依次判断这些CheckBox有没有被选中,控件很多,所以我想用一个 for 循环,用循环变量 i 来指定,这样可以减少代码量,又容易改。
这个问题以前用 C# 和 Qt 也遇到过,比如 Qt 中可以这样:QLabel *l = this->findChild<Qlable *>("lable name");
PS:这也是****的大神教的。
但是今天google,baidu找了半天也没找到MFC中类似的方法,有望用过的大神,帮忙指点!!
补充:我要的不是 GetDlgItem(),因为GetDlgItem( int )的参数是 int 型只能通过控件ID号获得控件的指针;我想要的是通过控件的 “名称”获得指针。谢谢!!!
------解决方案--------------------
CheckBox_1....CheckBox_n地址装入一个数组中
------解决方案--------------------
你把这些CheckBox的ID设置为连续的ID,一个for循环就可以完成了。IsDlgButtonChecked
------解决方案--------------------
放到一个group,这样就可以循环判断