首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

也许是简单的有关问题,如何自动得到焦点

2012-08-01 
也许是简单的问题,怎么自动得到焦点。页面上有3个文本框。maxlength都设置成了3位,只允许录入英文和数字。怎

也许是简单的问题,怎么自动得到焦点。
页面上有3个文本框。
maxlength都设置成了3位,只允许录入英文和数字。

怎么实现:
1,正常用手输入的时候。
在第一个textbox里输入满3位时,焦点(focus)自动跳到第二个textbox,第二个textbox满3位时,焦点自动跳到第三个textbox。

2,用户可能是用扫码器操作。被扫的码长度就是9位。
当焦点在第一个textbox上时,扫一下条形码,怎么实现按3位截取,依次把数据放到3个textbox中

[解决办法]

VB code
Private Sub Command1_Click()Text1.Text = "123456789"End SubPrivate Sub Form_Load()Text1.Text = ""Text2.Text = ""Text3.Text = ""End SubPrivate Sub Text1_Change()If Len(Text1.Text) = 9 Then Dim str As String str = Text1.Text Text1.Text = Mid(str, 1, 3) Text2.Text = Mid(str, 4, 3) Text3.Text = Mid(str, 6, 3)End IfEnd SubPrivate Sub Text1_KeyUp(KeyCode As Integer, Shift As Integer)If Len(Text1.Text) > 2 ThenText2.SetFocusEnd IfEnd SubPrivate Sub Text2_KeyUp(KeyCode As Integer, Shift As Integer)If Len(Text2.Text) > 2 ThenText3.SetFocusEnd IfEnd Sub
[解决办法]
第一个问题,超简单,第一个文本框(假设叫做Text1)要满了三个位就跳到第二个文本框(假设叫做Text2),……后面我就不写了,只写Text1跳到Text2的:
VB code
Private Sub Text1_Change()if Len(Text1.Text)=3 Then '满3个位   Text2.SetFocus'调用SetFocus方法设置焦点End ifEnd Sub 

热点排行
Bad Request.