以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  遍历控件的问题,  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=80945)

--  作者:kmzb56
--  发布时间:2016/2/13 21:26:00
--  遍历控件的问题,
     想请问一下怎么写在遍历一个窗口的所有控件,如果发现其中有些已经有了默认值,就让光标定位到空位的第一个控件,就让TAB健不在有已有值的上面跳动,按TAB健时只有没有值的控件上按顺序跳动?谢谢!哪位高手支持一下。
--  作者:大红袍
--  发布时间:2016/2/14 0:09:00
--  

keyup事件

 

If e.KeyCode = keys.tab Then
    vars("tab") = True
Else
    vars("tab") = False
End If

 

enter事件

 

If vars("tab") = True Then
    If e.Sender.text > "" Then
        Sendkeys.Send("{tab}")
    End If
End If


--  作者:kmzb56
--  发布时间:2016/2/14 15:14:00
--  
谢谢!等会试一下。
--  作者:kmzb56
--  发布时间:2016/2/14 17:31:00
--  
这个方法可以跳过所以的已有值的控件,但不能直接定位到第一个空值控件,比如,有10个控件,其中,1,2,3 8,9都有值了,要达到跳到这个窗口时,光标要跳到每个个空值控件,如,4控件,
--  作者:Hyphen
--  发布时间:2016/2/14 17:38:00
--  
设置好控件的Tab顺序


--  作者:大红袍
--  发布时间:2016/2/15 9:54:00
--  

afterload

 

If e.form.controls("Textbox1").Text > "" Then
    vars("tab") = True
    Sendkeys.Send("{tab}")
End If

 

click

 

vars("tab") = False

 

enter

 

If vars("tab") = True Then
    If e.Sender.text > "" Then
        Sendkeys.Send("{tab}")
    End If
End If

 

keyup

 

If e.KeyCode = keys.tab Then
    vars("tab") = True
Else
    vars("tab") = False
End If