在项目中想要增加MFC控件远程控制机器人小车的运动轨迹(大半径/小半径)和射球的方式(近射/远射),于是增加Radio Button单选控件。拖出四个控件后,右击“添加变量”,定义后在程序中调用实现相关功能。

调试运行时,出现如下错误:

网上总结的与代码本身相关的问题主要在于:1.野指针;2.内存泄露,参考如下:

https://jingyan.baidu.com/article/b0b63dbfe752f94a49307050.html

解决方法: 

 由于自己是MFC初学,认识到可能是自己代码问题,查看报错提示:

 找到该文件和所在行:

搜索“ASSERT(::GetWindowLong(hWndCtrl, GWL_STYLE) & WS_GROUP);” 提示说:

在IDC_RADIO的属性中,“Group”选项改为true

于是,将“大半径”和“近射”的属性页中的“组”改为“True”:

 

不再报错。

关于 Radio Button单选控件的知识总结:

RadioGroup类用于创建按钮之间相互排斥的单选按钮组,在同一个单选按钮组中勾选一个按钮,则会取消该组中其他已经勾选的按钮的选中状态。

若将控件变量{x1,x2,...,xn}归为一组(如:大半径=x1,小半径=x2),这个组中的第一个radio(x1)设置Group属性为True,其余(x2~xn)的Group设置为False。

注意:同一组的控件变量{x1,x2,...,xn}的定义要连续放在一起

 

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐