VS简易示波器(三):子属性窗的参数传递

有了子属性窗,接下来就是解决子属性窗的参数如何传递到主对话框。若参数较少,可以通过在子属性窗中添加GetXX之类的函数并由主对话框调用实现,但若参数较多时, GetXX之类的函数和调用也会增加,因此,本篇消息传递方法实现:

1) 在stadfx.h中添加代码;

#defineWM_FDM_MESSAGE  (WM_USER+100)       //自定义信息

struct cmddata{                                                     //传递数据打包结构体

UCHAR m_ucCmd;

USHORT m_usData;

};

2) 在子对话框中添加按钮控件并添加其响应函数代码:

cmddatam_cmddata;

m_cmddata.m_ucCmd = 5;

m_cmddata.m_usData = 10;

::SendMessage(this->GetParent()->m_hWnd,WM_FDM_MESSAGE, DWORD(&m_cmddata), DWORD(0));

3) 在主对话框.h中添加消息接收函数:

afx_msgLRESULT OnRecvMessage(WPARAM wParam, LPARAM lParam);

4) 在主对话框.cpp的MESSAGE_MAP中添加消息映射:

ON_MESSAGE(WM_FDM_MESSAGE,&CMyCtrlSysDlg::OnRecvMessage)

5) 添加消息接收函数OnRecvMessage代码:

CString str;

str.Format(L"%d,%d",m_cmddata->m_ucCmd, m_cmddata->m_usData);

MessageBox(str);

6) 测试效果:点击子对话框按钮后,弹出显示对话框:


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值