对多个控件同时做同样的操作的解决办法

本文介绍了在VC/MFC编程中如何高效地对多个控件进行相同的操作,如禁用或隐藏,避免了逐个操作的繁琐。通过使用`CWnd::GetNextDlgTabItem`和`CWnd::GetNextDlgGroupItem`两个成员函数,可以方便地实现控件数组的效果。文章列举了使用这两个函数的例子,并强调了注意事项,包括控件的`tabstop`属性和`group`属性的设置。此外,还提醒了禁用控件后,需要额外处理恢复启用的情况。
摘要由CSDN通过智能技术生成
 

在使用vc/mfc编程时常碰到要对多个控件同时做同样的操作的情况,特别是你想使某些控件同时禁用或同时隐藏某些控件等。这时你一般可以有如下选择:

1.     你可以给每个控件映射控制类型的变量,然后逐个对它们进行操作,这显然会在对话框类实例化时多占用用来存放成员变量的内存;

2.     你也可以通过getdlgitem函数得到来得到控件的窗体指针来逐个操作,而这除了占用指针内存外,遇到太多的控件时无疑会使代码量增加;

3.     你可采用指针数组来记录所有的控件,一般先要进行一个初始化动作在动话框开始显示时记录下要操作的控件,然后去对其操作。这种办法除了指针空间外,遇到不同类型的要进行太多的类型转化。

4.     当然,你要像vb那样使用控件数组的话在vc中也是可以通过映射控件的控制类型变量来实现的,但主要是它除了占用空间外还不太适合于不同类型的控件。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值