当前位置:编程学习 > VB >>

新人提问,求高手解答



我想在添加这个窗口添加数据后,主窗体也刷新数据,这个问题我想了很久了,还是没得到解决,所有想来这里碰碰运气,望高手们求救,毕业项目的 --------------------编程问答-------------------- 很简单的操作,如果是datagrid

set datagird1.datasource=rs 后,显示数据,那么
rs.addnew 后,datagrid会自动显示添加,你根本不需要添加任何代码

--------------------编程问答--------------------
引用 1 楼 worldy 的回复:
很简单的操作,如果是datagrid

set datagird1.datasource=rs 后,显示数据,那么
rs.addnew 后,datagrid会自动显示添加,你根本不需要添加任何代码


不好意思,不是很懂,究竟是在那个窗体上,能讲得详细些么?高手,我比较初学者 --------------------编程问答-------------------- 你怎么加载数据显示出来的?

添加完成后,再调用一下显示数据的代码。 --------------------编程问答-------------------- 添加完后 重新加载数据就行了 让 2个窗体都重新加载 --------------------编程问答-------------------- 注意你的Conn对象,一定要是公共的,比如放到模块里,用个Public来定义Conn对象。 --------------------编程问答-------------------- 你的主窗体是如何获得和显示数据的? 把那个模块前缀改成Public, 然后在这个窗体里面调用一下即可. 
或者直接更改主窗体的form_load事件为public, 直接调用重新加载. 这都是比较"粗"的办法. --------------------编程问答-------------------- 我个人建议从结构上解决,例如把数据库操作封装起来成为一个类或窗体,这里假设是一个类ClassDB.

这个ClassDB类里面设计一个事件DataChanged,当数据有改变时就触发这个事件.

然后在一个标准模块中定义一个全局对象(Public oPubDB as ClassDB),并让工程从Sub Main启动,在Sub Main中对oDB初始化.

然后每个窗体中都定义各自的私有对象oDB,然后Set到这个全局的oPubDB.

接着就方便了.当有新数据输入后,可以在类里面触发事件:

界面(即窗体)------[输入数据]----->ClassDB------>产生DataChanged事件

而每个窗体由于都有一个SET到公共对象oPubDB的私有对象oDB,那么有DataChanged事件产生时大家都能收到,然后就可以在这个事件里更新界面了,代码方面非常少,而管理这种同步更新的消息却很方便. --------------------编程问答-------------------- 呵呵,老马,对新人要求高了一点吧?

楼主,看你的单元格五颜六色的,怕不是 DataGrid 吧?

提问题时要把自己的实现说清楚。因为解决方法是随你的实现而异的。

如果你是用 MSHFlexGrid 绑定记录集的,那么:

rs.Requery 就可以了。
--------------------编程问答--------------------
引用 8 楼 of123 的回复:
呵呵,老马,对新人要求高了一点吧?

楼主,看你的单元格五颜六色的,怕不是 DataGrid 吧?

提问题时要把自己的实现说清楚。因为解决方法是随你的实现而异的。

如果你是用 MSHFlexGrid 绑定记录集的,那么:

rs.Requery 就可以了。
不过却是比较好的结构呀.我就常用这种结构,挺方便.
补充:VB ,  网络编程
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,