Office中国论坛/Access中国论坛
标题:
[求助]能否在窗体上连续执行一系列动作
[打印本页]
作者:
gdfsslec
时间:
2007-3-16 19:02
标题:
[求助]能否在窗体上连续执行一系列动作
我想在窗体A上的a控件更新数据后,自动打开窗体B,让窗体B的b控件的值等于窗体A上的a控件的值,(到此容易实现),接着,执行窗体B的b控件更新数据事件;然后执行窗体B的c控件的点击事件;然后关闭窗体B。
以上动作全部是窗体A上的a控件更新数据事件后的连发动作,能实现吗?
请高手指教!
作者:
sybai
时间:
2007-3-16 20:42
使用 CALL语句
作者:
gdfsslec
时间:
2007-3-16 20:59
不行的。
因为下一个动作取决于上一个动作的结果,所以必须要结束一个程序,再进行下一个。所以不能放在一个程序之内。
作者:
一点通
时间:
2007-3-16 21:47
这些方法可以在A窗体内完成,为何要用到B窗体呢?
作者:
andymark
时间:
2007-3-16 21:52
用TIMER事件辅助,实现分步执行
作者:
gdfsslec
时间:
2007-3-16 23:29
谢谢两位大师!
我有一个判断客户超期超额的窗体,现在想在出货窗体上判断客户是否超期超额并提示。由于两个窗体的数据源不同,很难合起来。所以想引用判断客户超期超额的窗体,自动完成判断并提示。
看来没有可以偷懒的办法。先用ANDYMARK大师的方法做做看,不行只能用一点通大师的办法。
作者:
fan0217
时间:
2007-3-17 00:37
如果你确实要用到两个窗体,那么在打开B窗体时请使用模式方式打开。
作者:
一点通
时间:
2007-3-17 00:43
只要能找出数据的关键字,不同的数据源也可作出判断的,如果利用另一个窗体来判断,理论上这个窗体叫做冗余窗体
作者:
fan0217
时间:
2007-3-17 00:56
为什么我们要设置记录ID呢,在这里就可以得到体现,获取了记录的ID就获得整条记录,很多操作是可以脱离窗体进行的。
作者:
gdfsslec
时间:
2007-3-17 01:29
谢谢大师指点!
我的判断客户超期超额的窗体本来是单独使用的,用于查询客户的超期超额情况和明细的,同时也会有提示。
现在我想在打印出库单的时候,当输入了客户名称后,如果客户超期超额,就提示,所以才想直接引用那个窗体,最好在后台运行,这样就不用另外写代码了。
用TIMER的方法我弄了一下,没成。我在判断客户超期超额的窗体里加入
Private Sub Form_Timer()
Me.TimerInterval = 1
Call 客户名称_AfterUpdate
Me.TimerInterval = 1
Call 查询_Click
Me.TimerInterval = 1
Call 退出_Click
Me.TimerInterval = 1
Me.TimerInterval = 0
End Sub
知道不对,但不知道怎么改,请高手指点!
作者:
andymark
时间:
2007-3-17 04:19
不能像上面的,这样的代码还不如不用TIMER
TimerInterval 的开与关须写在各执行事件后,而不是全放在Timer事件中
作者:
nxjswt
时间:
2007-3-17 19:03
你可以在这样,在设置一个窗体t和b一样的数据源,然后设置窗体为不显示,再在a中操作t窗体实现对b窗体的数据源的更新和使用!
作者:
gdfsslec
时间:
2007-3-17 19:24
可惜程序较大,无法上传。
我尝试如下办法,不行!因为TIMER是在FORM-LOAD里面执行的,但我的窗体要全部加载完才能数据完整,所以后面的动作无效。
Option Compare Database
Dim ce, cq, n
Private Sub Form_Timer()
If n = 1 Then
Call 客户名称_AfterUpdate
End If
If n = 2 Then
Call 查询_Click
End If
If n = 3 Then
Call 退出_Click
End If
End Sub
作者:
andymark
时间:
2007-3-17 19:29
在LOAD事件中先关闭time事件 me.TimerInterval=0,在执行某些动作后才打开me.TimerInterval=1
你可以把例子简化传上来
作者:
gdfsslec
时间:
2007-3-19 02:32
在LOAD里面关闭TIMER,FORM_TIMER就不工作了,也就没办法进行下去了。
只能走第二条路,加了一个汇总查询,然后用DLOOKUP解决问题。但是速度略慢,停顿一下而已,还可以接受。
论坛上有提到DLOOKUP会出错[em03]千万不要!否则人家超期200万,我还放货出去,我死定了
欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/)
Powered by Discuz! X3.3