例如我在DLG窗口上 添加了 100个button按钮
当我按下其中一个按钮时 触发单击事件 我就通过UDP 给另一台机子发送 数据
如何实现 ?
给这100个按钮,注册同一个事件,然后在内部做处理了。
BOOL CSimUlADlg::OnCommand(WPARAM wParam, LPARAM lParam)
{
// TODO: 在此添加专用代码和/或调用基类
if (wParam)
{
m_socket.Send((char *) &boeing, sizeof(boeing), "127.0.0.1", 8000);
}
return CDialog::OnCommand(wParam, lParam);
}
昨天实现了 重写了OnCommand函数 就可以了 你说的注册同一个事件怎么做?每个按钮是是单击事件
下面是两个按钮的功能我想知道内部做处理具体怎么做呢?
void CSimUlADlg::OnBnClickedButton1()
{
// TODO: 在此添加控件通知处理程序代码
if(boeing.batterySwitch ==0)
{
boeing.batterySwitch =1;
}
else if(boeing.batterySwitch == 1)
{
boeing.batterySwitch = 0;
}
// m_socket.Send((char *)&boeing, sizeof(boeing),"127.0.0.1",8000);
}
void CSimUlADlg::OnBnClickedButton2()
{
// TODO: 在此添加控件通知处理程序代码
if(boeing.fastenSeatbeltSign ==0)
{
boeing.fastenSeatbeltSign =1;
}
else if(boeing.fastenSeatbeltSign == 1)
{
boeing.fastenSeatbeltSign = 0;
}
//m_socket.Send((char *)&boeing, sizeof(boeing),"127.0.0.1",8000);
}
@涛洛伊: 哈哈,我还以为是C#代码。每个按钮的Click事件都绑定到一个处理函数上~所以点击任意按钮,都会执行这个处理函数,也就达到你要的效果了。