请教,两个窗体之间如何通信啊?
请教各位,我想在窗体1中做一个采集程序,当数据采集完毕之后通知窗体2处理并显示结论,其中的数据传递我已经通过全局变量方法实现了,可是我窗体2如何才知道采集是否完毕呢?窗体1如何通知窗体2呢?不知道如何实现呢? delphi的话,窗体1作为窗体2的私有变量由窗体2创建,窗体1有个通讯结束的事件,窗体2响应这个事件。数据传递也不需要用全局变量了。 同样通过全局变量传递通讯状态呗~ 同样通过全局变量传递通讯状态呗~ 窗体2的处理和显示函数设置为全局,然后在窗体1里面调用这个函数就可以了。 谢谢各位,窗体1的数据是在不断周期更新的,所以我目前采用了个定时器来查询状态,勉强解决问题,可是应该有好的方法的 忘了说明,我用的是BCB,呵呵PS:4楼上zxq6 小马哈是四川绵阳的?幸会! 用 SendMessage 发送自定义的信息, 如下:
窗体1: (hDlg1)
SendMessage (hDlg2, WM_USER + 100, 1, NULL); // wParam: 1=OK
窗体2: (hDlg2)
case WM_USER + 100:
if (wParam == 1)
{
处理你的数据......
}
break; 同意楼上,窗体间可以互相发消息通信 采集数据 用一个新线程或许更合适。
页:
[1]