Office中国论坛/Access中国论坛

标题: 获得值后返回控件焦点 [打印本页]

作者: luhao    时间: 2010-6-2 22:38
标题: 获得值后返回控件焦点
本帖最后由 luhao 于 2010-6-2 22:42 编辑

不知怎用 Screen.ActiveControl去解决 ,请老师们指教
作者: todaynew    时间: 2010-6-3 09:13
不知怎用 Screen.ActiveControl去解决 ,请老师们指教
luhao 发表于 2010-6-2 22:38

此问题似乎不必用Screen对象。
因为使用 Screen 对象及其属性,可以引用拥有焦点的窗体。你那个在背后的窗体目前没有焦点,于是乎你需要使之有焦点,而使之有焦点之前你要知道他叫什么名字,否则你不知道该让谁有焦点。
可是你既然知道他叫什么名字了,就又不必让他有焦点,因为你此时可以用forms来向他传递数据。
作者: luhao    时间: 2010-6-3 18:56
标题: 尝试
本帖最后由 luhao 于 2010-6-3 19:01 编辑

2# todaynew
我尝试了这样的函数,提不示:表达式引用了一个关闭或不存在的对象
Private Sub List0_DblClick(Cancel As Integer)
    If ActiveFormForm_SFiler筛选排产主表数据 = ActiveForm Then
        Form_SFiler筛选排产主表数据.ActiveControl = Me.List0.Column(0)
        DoCmd.Close acForm, "S筛选数据FrilersFile"
    End If
   
    If ActiveFormForm_SFiler筛选排产订单明细 = ActiveForm Then
        Form_SFiler筛选排产订单明细.ActiveControl = Me.List0.Column(0)
        DoCmd.Close acForm, "S筛选数据FrilersFile"
    End If
End Sub
作者: todaynew    时间: 2010-6-3 19:54
是不是应该:forms("SFiler筛选排产主表数据"),因为如果
SFiler筛选排产主表数据 = ActiveForm 的话,Me.List0应该在“SFiler筛选排产主表数据”窗体上,这和你的图示矛盾。
此外不活动的窗体是否可以用ActiveControl我不太清楚。
作者: wuqili123    时间: 2010-6-3 23:12
dsgdsgdf
作者: luhao    时间: 2010-6-4 02:20
4# todaynew
如果只有一个条件
    If ActiveFormForm_SFiler筛选排产主表数据 = ActiveForm Then
        Form_SFiler筛选排产主表数据.ActiveControl = Me.List0.Column(0)
        DoCmd.Close acForm, "S筛选数据FrilersFile"
    End If

就运行正常的.
但2个条件就出错了
作者: luhao    时间: 2010-6-4 03:28
4# todaynew 最后用了
Private Sub List0_DblClick(Cancel As Integer)
    If CurrentProject.AllForms("SFiler筛选排产主表数据").IsLoaded = True Then '判断窗体是否打开
        Form_SFiler筛选排产主表数据.ActiveControl = Me.List0.Column(0)
        DoCmd.Close acForm, "S筛选数据FrilersFile"
    End If

   
    If CurrentProject.AllForms("SFiler筛选排产订单明细").IsLoaded = True Then '判断窗体是否打开
        Form_SFiler筛选排产订单明细.ActiveControl = Me.List0.Column(0)
        DoCmd.Close acForm, "S筛选数据FrilersFile"
    End If
End Sub
测试通过
作者: todaynew    时间: 2010-6-4 09:04
4# todaynew  最后用了
Private Sub List0_DblClick(Cancel As Integer)
    If CurrentProject.AllForms("SFiler筛选排产主表数据").IsLoaded = True Then '判断窗体是否打开
        Form_SFiler筛选排产主表数 ...
luhao 发表于 2010-6-4 03:28

两个窗体都是打开的怎么搞?
作者: luhao    时间: 2010-6-4 22:36
标题: 不会
8# todaynew
弹出方式和模式 都选是就不会出错了




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3