VB禁止文本框输入

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了VB禁止文本框输入相关的知识,希望对你有一定的参考价值。

网上有两种办法,貌似都不完美,第一种办法是将文本框的Enabled属性设为False,但是这样做文本框里文字的颜色变得很淡了,看着不舒服,第二种办法是将文本框的Locked属性设为True,但是鼠标点上去会出现光标,仍然很别扭
有没有办法能避免文字变淡也可以避免鼠标点上去出现光标的办法呢?

VB文本框可通过文本框的KeyPress事件来判断输入字符的KeyAscii值来禁止输入特定字符。

代码实例,禁止输入大写A字符:

Private Sub Text1_KeyPress(KeyAscii As Integer)
    If KeyAscii = 65 Then
        KeyAscii = 0
    End If
End Sub

    KeyPress 事件,此事件当用户按下和松开一个 ANSI 键时发生。

    KeyAscii    
    整数,包含引发 AccessKeyPress 事件的按键(除 ALT 键外)的 Ascii 值,与标准的 KeyPress事件采用的方法相同。    

参考技术A 兄弟很南说话啊

不知道这样可不可以

放两个文本框

Private Sub Text1_GotFocus()
Text2.SetFocus
End Sub

当text1获取焦点时立即将焦点移到text2上去

另外
1楼说的是屁话 , C/S程式怎么用CSS????

3楼比较变通

4楼最聪明

我很傻 o(∩_∩)o 哈哈
参考技术B 不用文本框,用label,改一下属性backcolor为&H8000000E& BorderStyle=1,和文本框看起来一样,并且是只读的;
如果要赋值,则Label1.Caption="112233" 即可
参考技术C rivate Sub Text1_KeyPress(KeyAscii As Integer)
If KeyAscii Then
KeyAscii = 27
Else
End If
End Sub
用以上代码就可以了
keyascii=27 (27是esc键)没有输入
我通过测试了追问

你的方法试了一下,虽然可以,但是和把Locked设为True效果是完全一样的,鼠标点上去仍然有光标

追答

楼上的方法可行,不用文本框,用label,改一下属性backcolor为突出显示文本 BorderStyle=1,和文本框看起来一样,并且是只读的;

参考技术D 用CSS控制文字样式啊。追问

请问该如何控制呢?我是初学VB的,很多还不清楚,恳请赐教

追答

控件的属性cssstyle看下。

yii怎么设置文本框禁止输入,隐藏文本框

 readonly表示此域的值不可修改,仅可与 type="text" 配合使用,可复制,可选择,可以接收焦点,后台会接收到传值.
  代码如下

  <input type="text" name="IP" readonly="readonly" />

  disabled表示禁用input元素,不可编辑,不可复制,不可选择,不能接收焦点,后台也不会接收到传值
  代码如下

  <input type="text" name="IP" disabled="disabled" />

  另外可以通过css屏蔽输入法:<input style="ime-mode: disabled">
参考技术A

给你个栗子:

echo $form->field($model, 'scrap_cycle')->textInput(['readonly'=>'true']);

这样就好了。

以上是关于VB禁止文本框输入的主要内容,如果未能解决你的问题,请参考以下文章

vb 获取文本框内容

HTML如何禁止文本框输入

vb中,如何限制输入的文本框的内容只能是数字数或者字母?

VB文本框怎样限制只能输入数字值

javascript怎么禁止在文本框中输入?

javascript怎么禁止在文本框中输入?