原贴地址   http://community.csdn.net/Expert/topic/4600/4600266.xml?temp=.1314966
每个form上有多个Textbox~~
我要禁止在TextBox里输入全角字符
对单个TexeBox的控制已经实现,在KeyPress事件里。
因为有很多form,而且form上还有很多个TextBox。
想通过代码给form上的TextBox加上keyPress事件。
如何实现~~在vb.net里可以实现,在vb里怎么就实现不了.郁闷~~~~如果知道答案的请两个帖子都回复一下,我会把分都给你的~~~~

解决方案 »

  1.   

    把Text做成控件数组,然后把那个 单个TexeBox的控制代码 稍微修改就可以,不用给每个Text都写
      

  2.   

    比如,要对窗体上的所有Text控件进行限:如个从键盘输入,只接收数字:如个不做成控件数组,那么得分别给每个Text控件写代码:
    Private Sub Text1_KeyPress(KeyAscii As Integer)
        If KeyAscii < 48 Or KeyAscii > 57 Then KeyAscii = 0
    End SubPrivate Sub Text2_KeyPress(KeyAscii As Integer)
        If KeyAscii < 48 Or KeyAscii > 57 Then KeyAscii = 0
    End SubPrivate Sub Text3_KeyPress(KeyAscii As Integer)
        If KeyAscii < 48 Or KeyAscii > 57 Then KeyAscii = 0
    End Sub
    ......但是,如果把那些Text做成控件数组,只需要写一段代码就行:
    Private Sub txtInput_KeyPress(Index As Integer, KeyAscii As Integer)
        If KeyAscii < 48 Or KeyAscii > 57 Then KeyAscii = 0
    End Sub
      

  3.   

    把Text控件做成控件数组:
    把所有的Text控件命名为统一的名称,然后分别设置他们的Index属性(一般从0开始,0,1,2,3,......)
    如上面的,做成控件数组前,名称为Text1,Text2,Text3,......,做成控件数组后,名称都为txtInput
      

  4.   

    在同一个窗体里面的textbox最好做成数组样子!
    Private Sub txtInput_KeyPress(Index As Integer, KeyAscii As Integer)
        If KeyAscii < 48 Or KeyAscii > 57 Then KeyAscii = 0
    End Sub
      不同的窗体里面恐怕都要写同样的代码,如上!!
      

  5.   

    Private Sub Text1_KeyPress(Index As Integer, KeyAscii As Integer)
        If KeyAscii < 0 Then
            KeyAscii = 0
        End If
    End Sub
    至于那个每个form上的textbox都可用的话,是不是得定义一个变量得知form呀,我不太会,学习:)
      

  6.   

    g感谢各位的
    回帖,现在我想要完成我需要德功能只能用控件数组啦.现在那位大侠能说说怎么把原有的多个Textbox用代码,给弄到一个控件数组里?