Foxtable(狐表)用户栏目专家坐堂 → 关于e.KeyCode 的问题


  共有11331人关注过本帖树形打印复制链接

主题:关于e.KeyCode 的问题

帅哥哟,离线,有人找我吗?
yankunhao
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1015 积分:7119 威望:0 精华:0 注册:2008/9/1 22:34:00
关于e.KeyCode 的问题  发帖心情 Post By:2010/5/25 10:01:00 [只看该作者]

我一个窗口中有两个文本框一个窗口表,

我想在进入窗口时将光标定位到第一个文本框,输入内容后按回车键能将光标定位到第二个文本框,但我在第一个文本框中的KeyDown事件中代码为

if e.KeyCode = Keys.enter Then
Forms("自动录入").Controls("TextBox2").Select()
end if

 

发现光标定位到窗口表中了,另外我在第二个文本框的KeyDown事件代码为

 

Dim tbl As Table = Tables("自动录入_Table1")
If e.KeyCode = Keys.Up Then
    tbl.Position = tbl.Position - 1
    e.Cancel = True
ElseIf e.KeyCode = Keys.Down Then
    tbl.Position = tbl.Position + 1
    e.Cancel = True
ElseIf e.KeyCode = Keys.Enter Then
    If tbl.Current IsNot Nothing Then
        If e.Control = False Then
            Tables("工资录入表").Current("工序规格码") = tbl.Current("工序规格码") '单行写入的代码
        Else
            For Each r1 As Row In Tables("自动录入_Table1").GetCheckedRows
                Dim r2 As Row  = Tables("工资录入表").AddNew()
                r2("工序规格码") = r1("工序规格码")
            Next

        End If
    End if
    e.Form.Close()
End if
if e.KeyCode = Keys.Escape
 e.Form.Close()
End if

 

请问这是为什么呢,真的不明白!

[此贴子已经被作者于2010-5-25 10:01:22编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47448 积分:251048 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2010/5/25 10:04:00 [只看该作者]

做个简单例子

 回到顶部
帅哥哟,离线,有人找我吗?
yankunhao
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1015 积分:7119 威望:0 精华:0 注册:2008/9/1 22:34:00
  发帖心情 Post By:2010/5/25 10:10:00 [只看该作者]

我将第一个代码:

if e.KeyCode = Keys.enter Then
Forms("自动录入").Controls("TextBox2").Select()
end if

改为:

if e.KeyCode = Keys.enter Then
Forms("自动录入").Controls("TextBox1").Select()
e.Cancel = True
end if

这样就可以了,呵呵


 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47448 积分:251048 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2010/5/25 10:44:00 [只看该作者]

表扬一下

图片点击可在新窗口打开查看


 回到顶部