以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 即时同步数据的问题 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=76468) |
-- 作者:xiaohuli -- 发布时间:2015/10/29 17:47:00 -- 即时同步数据的问题 刚开始学习OpenQQ,用OpenQQ即时高效同步数据,在编辑窗口加一个保存按钮,按钮代码设置为: Dim r As Row = Tables("表A").Current 这个编辑窗口是服务端的程序上的,还是客户端的程序上加的这段代码呀,我是在客户端的编辑窗口的保存按钮上加了这段代码后,在QQClient的ReceivedMessage事件中修改代码: Dim msg As String = e.Message 这些代码都加了,然后我在客户端的编辑窗口中新增一行,保存后,其他客户端上也没有体现呀。 有了OpenQQ,我们可以保存某行数据后,通知其他好友,这一行的数据有变化,请重新加载,这样就能做到即时、高效了。这个到底怎么实现? |
-- 作者:大红袍 -- 发布时间:2015/10/29 17:54:00 -- 1、你把服务器QQ启动了吗?
2、你打开多个客户端QQ了吗?
3、你在ReceivedMessage事件加入msgbox,看是否接收到了信息
msgbox(e.Message)
在保存按钮,加入msgbox,看是否发送了信息
QQClient.Send(bd.name, msg) msgbox("发送了") |
-- 作者:xiaohuli -- 发布时间:2015/10/30 10:37:00 -- 在保存按钮上弹出了msgbox,但是在QQClient的ReceivedMessage中没有弹出msgbox,服务端还需要写什么代码不?服务端qq登录了,打开了多个客户端也登录了qq。 [此贴子已经被作者于2015/10/30 10:37:30编辑过]
|
-- 作者:大红袍 -- 发布时间:2015/10/30 10:57:00 -- 1、你是在本机测试,还是在不同的计算机上测试?
如果是本机测试,就打开服务器QQ、打开两个客户端QQ,登陆,然后在某个客户端QQ,发送信息,就会弹出;
2、如果不同电脑测试。你的服务器ip不能设置成127.0.0.1啊,要指明局域网或互联网的具体ip才行 |
-- 作者:xiaohuli -- 发布时间:2015/10/30 11:11:00 -- 客户端,服务端都是在本地测试的,我不明白的是这句话,多用户环境下,任何一个客户端做的修改、增加,删除,保存后都会立即体现在其他客户端上。 这句话的意思是当修改,增加,删除数据后,是自动体现在其他客户端上,还是qq来发送消息,通知其他好友数据已经改变? |
-- 作者:大红袍 -- 发布时间:2015/10/30 11:33:00 -- 1、通过 QQClient.Send(bd.name, msg) 发送信息,接收到信息后,动态执行编写的代码,做什么事都可以啊。
2、比如删除发送信息, 删除#1024 那么,获取信息后,就知道是删除了第1024行的数据,那么对应的把此行也删除一下。 |
-- 作者:xiaohuli -- 发布时间:2015/10/30 11:44:00 -- 问题是,当我新增一行数据保存后,保存按钮和QQClient的ReceivedMessage事件中都弹出了msgbox,但是没有通知给好友呀,没有在其他在线的好友的客户端上体现出来,数据已经修改的问题。 |
-- 作者:大红袍 -- 发布时间:2015/10/30 11:51:00 -- 弹出msgbx就行了啊,根据发送的信息,写代码啊。 |
-- 作者:xiaohuli -- 发布时间:2015/10/30 11:54:00 -- 老师,当弹出了msgbox后,那我应该在哪里写代码呀,能不能写个小例子。 |
-- 作者:大红袍 -- 发布时间:2015/10/30 11:57:00 -- 以下是引用xiaohuli在2015/10/30 11:54:00的发言:
老师,当弹出了msgbox后,那我应该在哪里写代码呀,能不能写个小例子。
帮助文档就有啊,在ReceivedMessage写到任何代码啊
http://www.foxtable.com/help/topics/3006.htm
|