MFC中动态创建多个按钮并实现其消息响应

本文介绍了如何在MFC程序中根据需要动态创建多个按钮,并为每个按钮设置独立的消息响应。步骤包括在类中声明按钮指针和控件ID,在 OnInitDialog 函数中动态创建按钮,以及定义和映射消息响应函数OnButtonClick,实现不同按钮的事件处理。
摘要由CSDN通过智能技术生成

在MFC中,一般通过控件栏直接向对话框中添加按钮控件,并双击按钮添加该按钮控件的消息响应函数。但是经常我们需要根据程序输入或运行时信息在界面上动态生成一个或多个按钮,并分别添加消息响应,实现这一目标包括如下几步:

1.在类中声明按钮变量指针CButton* btn。

2.在类中声明并定义按钮控件的ID, buttonID=10000。

3.在类的OnInitDialog()函数中动态创建按钮。

btn = new CButton[n];
DWORD dwStyle = WS_CHILD | WS_VISIBLE | BS_PUSHBUTTON;
for(int i = 0; i < DBUtil::OrdnanceSiteNum; i++){
	btn[i].Create(str, dwStyle,CRect(x1,y1,x2,y2),this,buttonID+i);	
	btn[i].SetFont(GetParent()->GetFont());
}

上述代码中,n表示运行时获得的按钮控件的个数,一共创建n个按钮控件,且控件ID在buttonID~but

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值