爱问知识人 爱问教育 医院库

VB编程上的小问题

首页

VB编程上的小问题

关于自动过格问题,就是像我们填写序列号那样,我们在填写好第一个文本后,光标会自动过去第二个文本开头,如此自动到第3、4....到完成,在删除时回反之,光标会退格。 
我做了一个简单的文本就是只能在第一个文本显示输入,光标不会自动过文本。 
请各位大虾帮忙解决一下,要是Visual Basic的编程的,谢谢!! 

提交回答
好评回答
  • 2018-04-06 06:45:37
    一个文本框最多输入多少位?比如5位的话
    在控件数组Text1的Change事件代码的最后判断是不是要移动焦点,加如下代码:
    Private Sub Text1_Change(Index As Integer)
    '……
    If Len(Text1(Index).Text) = 5 And Index <> Text1.UBound Then Text1(Index + 1).SetFocus
    If Len(Text1(Index).Text) = 0 And Index <> Text1.LBound Then Text1(Index - 1).SetFocus
    End Sub
    如果最大长度不是5的话,要把这句代码里的5改成你想定成的长度。
    你看这样是不是你想要的效果?
    

    孙***

    2018-04-06 06:45:37

其他答案

    2018-04-06 05:45:37
  • 以下代码在按ENTER键后而且Text1不是空字符串,焦点自动转移至下一文本框:
    Private Sub Text1_KeyPress(KeyAscii As Integer)
        If KeyAscii = 13 And Text1 <> "" Then '在运行中设置焦点
            'Text1 = UCase(Text1)
            Text2.SetFocus
        End If
    End Sub
    以下是当Text2为空字符串,焦点焦点自动转移至上一文本框:
    Private Sub Text2_Change()
    If Text2 = "" Then
    Text1.SetFocus
    End If
    End Sub
    

    涐***

    2018-04-06 05:45:37

类似问题

换一换
  • VB 相关知识

  • 电脑网络技术
  • 电脑网络

相关推荐

正在加载...

热点检索

  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 171-190
返回
顶部
帮助 意见
反馈

确定举报此问题

举报原因(必选):