还是关于len,输入超出控制以后
日期:2006-11-21 荐:
还是关于len,输入超出控制以后在len(控件.text)位数做了限定以后,如果user输入得位数超出9位,就会提示.但是在超出提示以后,控件里边的数字仍然会多出来一位.例如:现在已经输入了012345678,当用户再输入9的时候,程序提示以后,控件里边会增加一个数:9.控件内的数字就变成0123456789了.如果再继续加,仍然会提示,并且还会继续增加user输入的一位数.请问,怎样才能保证提示以后,不增加数字????提示以后控件.text = left(控件.text,9)在程序中加如长度判断的语句:Private Sub _Change()If Len(.Text) >= 9 Then .Text = Right(.Text, 9)End SubPrivate Sub _KeyPress(KeyAscii As Integer) If Len(.Text) = 9 Then MsgBox "9个字了" KeyAscii = 0 End IfEnd Sub行是行了,可是"后退"键在控件里边不起作用了.怎么回事?我这里有2种代码(不知道ascii码里边哪个号是后退)Sub _KeyPress(KeyAscii As Integer)If KeyAscii < 48 Or KeyAscii > 57 ThenKeyAscii = 0End IfEnd Sub-=----------------------------------------Private Sub _KeyPress(KeyAscii As Integer)KeyAscii = NumberOnly(KeyAscii)End Subpublid function NumberOnly(byval x as integer)as integerselect case x case 8,9,13,&h31 to &h39 NumberOnly=x case else NumberOnly=0end selectend function把textbox的maxlenth设置为9这是最简便的办法把textbox的maxlenth设置为9=========================支持!把textbox的maxlenth设置为9=========================up如果是在combo里边,那要怎样控制长度啊?
标签: