文本框里如何屏蔽汉字

youngzi 2003-09-02 09:26:54
文本框里如何屏蔽汉字
...全文
81 34 打赏 收藏 转发到动态 举报
写回复
用AI写文章
34 条回复
切换为时间正序
请发表友善的回复…
发表回复
NoReady 2003-10-21
  • 打赏
  • 举报
回复
屏蔽汉字我喜欢用:imemode=off
njms1984 2003-10-21
  • 打赏
  • 举报
回复
验证文本框里的字符 不是英文和符号的就清空
citylamp 2003-10-19
  • 打赏
  • 举报
回复
用正则表达式验证就可以了。
‘下面是输入后按按钮,如果输入成功显“OK”
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
If Regex.IsMatch(TextBox1.Text, "^[a-zA-Z\d\+\-\?\\\\.\*\|\(\)\{\}\^\&\$\n\r\t\v\f\]*$") Then
MsgBox("OK!!")
Else
TextBox3.Text = ""
End If
End Sub
TonyTonyQ 2003-10-19
  • 打赏
  • 举报
回复
扫描每个字符的ASCII码,英文和符号的ASCII码都在一个确定的范围内(具体可以查表),希望这个能给你点思路。
良朋 2003-10-18
  • 打赏
  • 举报
回复
以前玩vfp时有个textbox有个format属性,你在里面输入999,999.99就行了。
相信vb.net里也应该有简单的方法
良朋 2003-10-18
  • 打赏
  • 举报
回复
给你个可行的思路,我以前做过,但手头没有了原码

字符串[除去](字符串[除去]ABCDEF...XYZ)

你试试,这个很简单的
Surpass 2003-10-18
  • 打赏
  • 举报
回复
学习
skyover 2003-10-18
  • 打赏
  • 举报
回复
imgMode Off.Paste Off
liuguangwei 2003-10-18
  • 打赏
  • 举报
回复
If Not (IsNumeric(e.KeyChar) Or e.KeyChar = Microsoft.VisualBasic.ChrW(8) Or & _ e.KeyChar = Microsoft.VisualBasic.ChrW(46)) Then
e.Handled = True
End If
ecstar 2003-09-10
  • 打赏
  • 举报
回复
Private Sub TxtTest_TextChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles TxtTest.TextChanged
Dim strText As String = TxtTest.Text.Trim
Dim strLast As String
If strText = "" Then Exit Sub
strLast = strText.Substring(Len(strText) - 1)
If strLast <> Encoding.ASCII.GetString(Encoding.ASCII.GetBytes(strLast)) Then
TxtTest.Text = strText.Replace(strLast, "")
TxtTest.SelectionStart = Len(TxtTest.Text)
End If
End Sub
ecstar 2003-09-10
  • 打赏
  • 举报
回复
不是没有办法屏蔽,是你根本就没有考虑过怎么样用上面的方法实现屏蔽?如果需要我可以给你看个Demo,具体实现你自己看想吧,就是上面思路的扩展而已
youngzi 2003-09-10
  • 打赏
  • 举报
回复
楼上:
用你的方法可以检测到汉字,但没法屏蔽,就是用e.Handled = True没用,不知道你还有没其它的高招
ecstar 2003-09-09
  • 打赏
  • 举报
回复
试下这段代码,多字节的字经过简单的ascii码转换后将面目全非(乱码的原理)

刚想出来的,不知道是否好用,我只做了下简单的测试

Dim strText As String = TextBox1.Text.Trim
If strText <> Encoding.ASCII.GetString(Encoding.ASCII.GetBytes(strText)) Then
MsgBox("sorry")
End If
shining007 2003-09-08
  • 打赏
  • 举报
回复
TextBox1.ImeMode = ImeMode.Disable
剪贴板不要关掉,太不象话了
youngzi 2003-09-08
  • 打赏
  • 举报
回复
up
youngzi 2003-09-05
  • 打赏
  • 举报
回复
好象还是不行
sonryou 2003-09-03
  • 打赏
  • 举报
回复
不明白,把输入法屏蔽掉就可以吧:
TextBox1.ImeMode = ImeMode.Disable
请指教
youngzi 2003-09-03
  • 打赏
  • 举报
回复
to anika(破晓)
请解释一下正则表达式
liuguangwei 2003-09-03
  • 打赏
  • 举报
回复
不要用Disable

用textbox1.ImeMode = ImeMode.NoControl

要不然 ctrl+空格 输入法又回来了
斗斗来三 2003-09-02
  • 打赏
  • 举报
回复
把汉字输入的几个来源给关了,第一是textbox属性里的ImeMode
得到焦点就关了
下一个关剪贴板
就没了啊
加载更多回复(14)

16,718

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧