vb.net英文和数字 计算机vb语言

vb.net的textbox中可以正常输入英文数字切换到中文输入法一按键就退出程序

PrivateSubText1_KeyPress(KeyAsciiAsInteger)If((KeyAscii=48AndKeyAscii=65AndKeyAscii=97AndKeyAscii=122))=FalseThenKeyAscii=0EndSub

成都创新互联专业为企业提供金昌网站建设、金昌做网站、金昌网站设计、金昌网站制作等企业网站建设、网页设计与制作、金昌企业网站模板建站服务,10年金昌做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。

vb.net 让相应的textbox中只能输入“中文字符、英文、数字”

每个textbox都有KeyPress事件(event),每次用户输入一个字符时检测,如不满足则清空

我现在不在vs下,你可以找到这个面板,绑定相应的函数

比如只能显示数字

Private Sub NumBox_KeyPress(KeyAscii As Integer)

If Not IsNumeric(NumBox.Text) Then

NumBox.Text = ""

End If

End Sub

只能显示英语(a-z 97-122; A-Z 65-90; 8(退格)和13(换行))

Private Sub EngBox_KeyPress(KeyAscii As Integer)

If Not (KeyAscii = 97 And KeyAscii=122) Or (KeyAscii = 90 And KeyAscii=65) Or = 8 Then

EngBox.Text = ""

End If

End Sub

只能显示汉字(汉字的ASCII值要么小于0,要么是8(退格)和13(换行))

Private Sub ChineseBox_KeyPress(KeyAscii As Integer)

If Not KeyAscii  0 Or KeyAscii = 8 Or KeyAscii = 13 Then

ChineseBox.Text=""

End If

End Sub

做了一些小修改,不明白请及时追问,满意敬请采纳,O(∩_∩)O谢谢

VB.NET怎么限制中英文输入长度

Private Sub TextBox1_KeyPress(sender As Object, e As KeyPressEventArgs) Handles TextBox1.KeyPress

If System.Text.Encoding.Default.GetByteCount(TextBox1.Text) = 11 And e.KeyChar Chr(8) Then

e.Handled = True

Else

e.Handled = False

End If

End Sub

这个不太完善,是假设原来文本长度已经有11就不允许继续输入,因为判断当下输入的是汉字还是英文很麻烦。

e.KeyChar Chr(8)这句是保证任何时候Backspace键都要有效。

希望能对你有所帮助。

vb.net随机产生英文字母的代码

1.随机产生英文字母

Randomize() '功 能:初始化随机数发生器

Me.txt1.Text = Chr(Asc("a") + Int(Rnd() * 26))

'Rnd 函数返回小于 1 但大于或等于 0 的值。

'0 = Rnd() * 26 26 是含小数位的数

'Int(Rnd() * 26) 转换为整型,就是0~25的随机数

'Asc("a") 得到a的ASCii数值,是整数97(A是65)

'a~z的ASCii为97~122 ,即为a~z之间的字母为97加(0~25)

'Asc("a") + Int(Rnd() * 26)为97到122的随机数

'Chr()又可以起到转换成字符的功能,Chr(97)表示a (a转换成数值又是Asc("a")=97)

'Chr(Asc("a") + Int(Rnd() * 26))就是a~z的随机数了

Randomize() '再次初始化随机数发生器

Me.txt2.Text = Chr(Asc("A") + Int(Rnd() * 26)) '这里是A~Z的随机数

'也可以换这种写法

Randomize()

Me.txt1.Text = Chr(Int((26 * Rnd()) + 97)) '这里是a~z的随机数

'这是在你知道ASCII码的情况之下(a~z为97~122,A~Z为65~90)

'Rnd()为0~0.9999999.....的随机数

' 26 * Rnd()为0~25.9999...的随机数

'Int((26 * Rnd())为0~25的随机数

'Int((26 * Rnd()) + 97)为97~122的随机数

'Chr(Int((26 * Rnd()) + 97))就是a~z的随机数了

Randomize()

Me.txt2.Text = Chr(Int((26 * Rnd()) + 65)) '这里是A~Z的随机数

'至于同时在一处随机大写或小写,ASCII码的数字又不挨在一起(65-90,97-122),比较麻烦。想写的话,你可以自己想一下怎么办

2.数字怎样转换成ASCII码所对应的字母

Chr()函数将数字转换成ASCII对应的字母,Asc()函数将字母根据ASCII表转换成数字

Chr(97)表示a (a转换成数值又是Asc("a")=97)

3.加到数组,你可以放在一个for循环里

比如

Dim arylst1 As New ArrayList

Dim arr1() As String '数组

Dim str1 As String

For i As Integer = 1 To 15 '比如我想要15个随机字母

Randomize()

str1 = Chr(Int((26 * Rnd()) + 65)) '这里是A~Z的随机数

arylst1.Add(str1)

Next

ReDim arr1(arylst1.Count - 1) '这里是为了比较动态,可以只改变 i 的范围来决定要多少个随机字母

'当然也可以写死,在前面直接定义为 arr1(14),下次要改的时候就要改定义的地方和i的范围,改两个地方

arylst1.CopyTo(arr1)

'就把数值拷贝到数组里面了


网站栏目:vb.net英文和数字 计算机vb语言
文章位置:http://azwzsj.com/article/hpiehi.html