Foxtable(狐表)用户栏目专家坐堂 → 光标问题


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

主题:光标问题

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


加好友 发短信
等级:八尾狐 帖子:1953 积分:15015 威望:0 精华:0 注册:2016/4/28 9:58:00
光标问题  发帖心情 Post By:2016/11/5 11:41:00 [只看该作者]

If e.KeyCode = Keys.Enter Then
    e.sender.WriteValue
    If e.Form.controls("CheckBox2").checked = False And e.Form.Controls("checkbox4").checked = True Then
        If Tables("上分_table1").Position < Tables("上分_table1").Rows.Count-1 Then
            Tables("上分_table1").Position += 1
        End If
        e.Form.Controls("textbox6").Selectall
    End If
    If e.Form.controls("CheckBox2").checked = False And e.Form.Controls("checkbox4").checked = False Then
        If Tables("上分_table1").Position < Tables("上分_table1").Rows.Count-1 Then
            Tables("上分_table1").Position += 1
        End If
        e.sender.Selectall
        
    End If
    If e.Form.controls("CheckBox2").checked = True Then
        e.Form.Controls("textbox5").Selectall
    End If
End If


老师,上面代码是想在输入时根据情况判断将光标自动移到指定TEXTBOX中,方便录入,但红色代码不能实现,而是光标移到了一个命令按钮上,请问什么原因,谢谢

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


加好友 发短信
等级:八尾狐 帖子:1953 积分:15015 威望:0 精华:0 注册:2016/4/28 9:58:00
  发帖心情 Post By:2016/11/5 11:42:00 [只看该作者]

另外如何设置文本框中输入的最大值,比如大于多少就取消

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


加好友 发短信
等级:超级版主 帖子:110574 积分:562760 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/11/5 12:07:00 [只看该作者]

e.Form.Controls("textbox6").Select

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


加好友 发短信
等级:超级版主 帖子:110574 积分:562760 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/11/5 12:23:00 [只看该作者]

控件Validating事件

If val(e.Sender.Text) > 100 Then
    msgbox("超出")
    e.Sender.Select
    e.Sender.Text = ""
Else
    e.Sender.Error =""
End If

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


加好友 发短信
等级:八尾狐 帖子:1953 积分:15015 威望:0 精华:0 注册:2016/4/28 9:58:00
  发帖心情 Post By:2016/11/5 12:45:00 [只看该作者]

这个试了还是不行,老师,我现在主要是因为有可能教师上分时不按考号上,而是拿着试卷直接上分,那么就需要输入考号找到该学生来上分,为方便,可选考号中任意几个连续数输入找到,上分时有几种情况,一是只上A,连号上或选号上,一种是只上B,连号上或选号上,三是同时上AB,连号上或选号上,另外在text4,5中按TEXT2,3设置最大值录入,超过则重新输入,因准备下周半期考试试一下,改了很久还是改不好,很着急,现在主要原因是在TEXT4回车时焦点不能回到txte6,请帮我调整下,(原设计的语音校正都略了)谢谢

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


加好友 发短信
等级:八尾狐 帖子:1953 积分:15015 威望:0 精华:0 注册:2016/4/28 9:58:00
  发帖心情 Post By:2016/11/5 12:46:00 [只看该作者]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目2.table


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


加好友 发短信
等级:超级版主 帖子:110574 积分:562760 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/11/5 14:32:00 [只看该作者]

If e.KeyCode = Keys.Enter Then
    e.sender.WriteValue
    If e.Form.controls("CheckBox2").checked = False And e.Form.Controls("checkbox4").checked = True Then
        If Tables("上分_table1").Position < Tables("上分_table1").Rows.Count-1 Then
            Tables("上分_table1").Position += 1
        End If
        e.Form.Controls("textbox6").Select
    End If
    If e.Form.controls("CheckBox2").checked = False And e.Form.Controls("checkbox4").checked = False Then
        If Tables("上分_table1").Position < Tables("上分_table1").Rows.Count-1 Then
            Tables("上分_table1").Position += 1
        End If
        e.sender.Select
        
    End If
    If e.Form.controls("CheckBox2").checked = True Then
        e.Form.Controls("textbox5").Select
    End If
e.Cancel = True
End If

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


加好友 发短信
等级:八尾狐 帖子:1953 积分:15015 威望:0 精华:0 注册:2016/4/28 9:58:00
  发帖心情 Post By:2016/11/5 17:37:00 [只看该作者]

蓝导你好,上面项目的问题是:一、text4,5的值不能按text2,3设置限制。二、是焦点不按预想的移动,如当只输入A卷时,如果check4.checked=true,我想焦点移动到text6,这样再输入考号查找到要录入的学生,继续回车后录入其A卷,但光标不这样移,而是到了一个按钮上,这样要手动移动至text6,效益不高了。请老师帮看下项目2,谢谢

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


加好友 发短信
等级:超级版主 帖子:110574 积分:562760 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/11/5 17:55:00 [只看该作者]

TextBox4

Validating事件
If val(e.Sender.Text) > val(e.Form.Controls("TextBox2").text) Then
    msgbox("超出范围")
    e.Sender.Select
    e.Sender.Text = ""
Else
    e.Sender.Error =""
End If

KeyDown

If e.KeyCode = Keys.Enter Then
    e.sender.WriteValue
    If e.Form.controls("CheckBox1").checked = False
        If e.Form.Controls("checkbox4").checked = True Then
            If Tables("上分_table1").Position < Tables("上分_table1").Rows.Count-1 Then
                Tables("上分_table1").Position += 1
            End If
            e.Form.Controls("textbox6").Select
        Else
            If Tables("上分_table1").Position < Tables("上分_table1").Rows.Count-1 Then
                Tables("上分_table1").Position += 1
            End If
            e.sender.Select
        End If
    Else
        If val(e.Sender.Text) > val(e.Form.Controls("textbox2").text) Then
            msgbox("超出")
            e.Sender.Select
            e.Sender.Text = ""
        Else
            e.Form.Controls("textbox5").Select
        End If
    End If
    e.Cancel = True
End If

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


加好友 发短信
等级:八尾狐 帖子:1953 积分:15015 威望:0 精华:0 注册:2016/4/28 9:58:00
  发帖心情 Post By:2016/11/5 23:49:00 [只看该作者]

Dim sp As New DotNetSpeech.SpVoice()
sp.rate = 8

If e.KeyCode = Keys.Enter Then
    e.sender.WriteValue
    If val(e.Sender.Text) > val(e.Form.Controls("textbox2").text) Then
      If e.Form.Controls("CheckBox3").checked = True
        ''msgbox("超出范围")
        sp.Speak("输入值大了", DotNetSpeech.SpeechVoiceSpeakFlags.SVSFlagsAsync)
    End If
        e.Sender.Select
        e.Sender.Text = ""
    Else
If e.sender.text = ""
e.sender.value = "0"
End If
If e.Form.Controls("CheckBox3").checked = True
        sp.Speak(e.sender.value, DotNetSpeech.SpeechVoiceSpeakFlags.SVSFlagsAsync)
    End If
If e.Form.Controls("checkbox2").checked =True
            e.Form.Controls("textbox5").Select
        Else
            
            If Tables("上分_table1").Position < Tables("上分_table1").Rows.Count-1 Then
                Tables("上分_table1").Position += 1
            End If
            If e.Form.Controls("checkbox4").checked =True
                e.Form.Controls("textbox6").Select
            Else
                e.sender.Select
            End If
            
        End If
    End If
    e.Cancel = True
End If
老师,谢谢你帮助,我改成了上面的结果可实现语音了,现在有一个问题,我在菜单中有几个按钮用于打开几个主窗口,但每次按都要重新打开一次对应窗口,有什么办法可以判断如果先打开了的就显出来就是了,这样减少加载负担。谢谢

 回到顶部
总数 11 1 2 下一页