我要我的厂牌.由于text.text中输入的值而改变标题值

  • 本文关键字:text 改变 标题 由于 我要 vb6
  • 更新时间 :
  • 英文 :


我正在学习用VISUAL BASIC 6.0编程。我要我的标签。标题值相对于textbox1.caption…我使用的代码如下,但它仍然不工作。请帮帮我。问候。

If Val(Text1) > 0 And Val(Text1) < 39 Then
  Label20.Caption = "0"
Else
  If Val(Text1) > 40 And Val(Text1) < 44 Then
    Label20.Caption = "1"
  Else
    If Val(Text1) > 45 And Val(Text1) < 49 Then
      Label20.Caption = "2"
    Else
      If Val(Text1) > 50 And Val(Text1) < 59 Then
        Label20.Caption = "3"
      Else
        If Val(Text1) > 60 And Val(Text1) < 69 Then
          Label20.Caption = "4"
        Else
          If Val(Text1) > 70 And Val(Text1) < 100 Then
            Label20.Caption = "5"
          End If

0、39、40、44、45、49、50、59、60、69、70和100不会在上方触发。使用<=>=

我假设您在Text1_Change事件中使用该代码?如果没有,你应该:-)

这是一个文本项目,我认为这是你的意思:

'1 form with
'  1 textbox : name=Text1
'  1 label   : name=Label1
Option Explicit
Private Sub Text1_Change()
  Dim lngVal As Long
  lngVal = Val(Text1.Text)
  Select Case lngVal
    Case 0 To 39
      Label1.Caption = "0"
    Case 40 To 44
      Label1.Caption = "1"
    Case 45 To 49
      Label1.Caption = "2"
    Case 50 To 59
      Label1.Caption = "3"
    Case 60 To 69
      Label1.Caption = "4"
    Case 70 To 100
      Label1.Caption = "5"
    Case Else 'clear label to show something unexpected was entered
      Label1.Caption = ""
  End Select
End Sub

我猜文本框应该只包含数字?要确保它只能接收数字,您可以添加以下内容:

Private Sub Text1_KeyPress(KeyAscii As Integer)
  Select Case KeyAscii
    Case vbKeyBack        'allow the backspace
    Case vbKey0 To vbKey9 'allow keys 0 to 9
    Case Else             'dont accept any other input
      KeyAscii = 0
  End Select
End Sub

其他提示:

  • 不依赖于控件的默认属性。文本框的文本),但写出来,以防止意外的结果
  • 使用select..case代替if..then语句列表
  • 总是包含一个结尾'else'来捕获不符合您要求的输入
  • 缩进你的代码,这样你就可以很容易地看到你是否错过了"结束如果"

最新更新