位置与方位教案:VB编程:首次按下按键“1”,文本框中出现两个“1”

来源:百度文库 编辑:中科新闻网 时间:2024/05/01 06:47:03
Dim s(3) As String
---------------------------------------
Private Sub Text1_KeyPress(KeyAscii As Integer)
If KeyAscii = 49 Then
s(0) = "1"
Text1.Text = s(1) + s(0)
s(1) = Text1.Text
End If
If KeyAscii = 50 Then
s(0) = "2"
Text1.Text = s(1) + s(0)
s(1) = Text1.Text
End If
.......
End Sub
省略号表示一直到s(0) = "9"的条件语句。但不管是几,首次按下时都出现两个
奇怪的是第二次按下、第三次按下、....都很正常。比如连续按下3个“1”就会出现4个“1”,光标前面3个“1”,光标后面1个“1”。如果你按下121,则出现1121,光标在前2个“1”中间,百思不得其解。盼VB高手赐教。

Text1.Text=s(1)+s(0)是什么意思哦?你直接这样写:
Text1.Text=chr(KeyAscii)

在概是这样的:当你按1时,你的代码生效了赋值了一个1,系统对键盘的响应又给了一个1

S(1)没有初始化,系统自定义为空字符串,即Null型。

UnKnow.