Delphi里多线程里面怎么进行通信? 我的程序有网络和界面两块,网络层负责接收和发送消息,提供接口给界面调用发送消息出去,接收到消息后通知界面处理消息,请问通信线程和界面之间的通信我该怎么实现? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 向界面发送消息。用PostMessage(不等待)或SendMessage(等待)。如果要等待UI线程理完毕,也可以用TThread的Synchronize方法。 我曾经用delphi做过一个两层结构的系统,下层是用c++编的一个dll,提供了一些函数从硬件读取数据,而上层则定时调用这些函数,读取数据,一方面把读上来的数据放进数据库,一方面在界面上显示分析图表。上微机有八个线程,同时监听8个通道的数据,并且同事在8个窗体上显示分析图表,应该跟你这个系统比较相近吧。关于上位机和下位机到底是谁调谁的问题,我们尝试了两种方案,一是通道有数据传上来,上位机就接受并存盘并刷新相应窗体的图表,另一是上位机定时调用dll里的函数读取数据,后一种只要在界面的窗体上加一个timer控件,定期读取数据就可以。我们用的就是后一种方案。如果用的一种方案,你可能需要自己定义一个事件,其触发条件是你的网络层受到消息,让后调用界面层作相应处理。希望对你有帮助。 重载的问题 打包 Crystal Report数据库连接问题 D7的websnap调试时老说“标记没有引用存储”错误,求救! 关于密码小键盘 哪位能把一个文件从一个指定的目录拷贝到一个指定的目录的源代码帖出来?在线等! 在线等待-----安装问题!!急急急急 怎样获取邮件的正文、附件(二进制和文本模式获取)---高手请进 怎样在TreeView的指定位置加入一个新的结点?? delphi中怎么实现延时,要简单 为什么我用delphi中自带的数据库paradox7时,输入汉字时总是会出现乱码非得输两次才行? 请问大家有做企业报帐管理系统的吗,谈谈感想,人人有分.
如果要等待UI线程理完毕,也可以用TThread的Synchronize方法。