当前位置:编程学习 > VB >>

请高手指点为什么这个label.caption不变?

Private Sub Command1_Click()
Dim i, j As Long
                For i = 1 To 100
                
                If 1 < i <= 30 Then
                Label1.Caption = "第一阶段……"
                Else
                If 30 < i <= 65 Then
                Label1.Caption = "第二阶段……"
                Else
                If 65 < i <= 100 Then
                Label1.Caption = "第三阶段……"
                End If
                End If
                End If
                Label2.Caption = i
                For j = 1 To 10000
                DoEvents
                Next
                Next
End Sub
为什么这段程序,点击按钮label1.caption总是显示第一阶段?而且label2.caption能显示1到100? --------------------编程问答-------------------- 又来了。 --------------------编程问答-------------------- 楼主发的不是代码,而是一种思想。 --------------------编程问答--------------------

Private Sub Command1_Click()
    Dim i, j As Long
    For i = 1 To 100
    
        If i <= 30 Then
            Label1.Caption = "第一阶段……"
        ElseIf i <= 65 Then
            Label1.Caption = "第二阶段……"
        Else
            Label1.Caption = "第三阶段……"
        
        End If
        
        Label2.Caption = i
        
        For j = 1 To 10000
            DoEvents
        Next
        
    Next
     
End Sub


不知道楼主是if语句没理解还是逻辑不太爽
另外,VB里面的条件不象数学一样可以连续整的

If 1 < i <= 30 Then 
要分成
if 1<i and i<=30 then

--------------------编程问答--------------------
引用 1 楼 bestbadgod 的回复:
又来了。


--------------------编程问答-------------------- LZ你花3分钟跟下程序什么问题都解决了。 --------------------编程问答-------------------- 语句有错误。

Private Sub Command1_Click()
Dim i, j As Long
    For i = 1 To 100
                
        If i <= 30 Then
            Label1.Caption = "第一阶段……"
        Else
            If i <= 65 Then
                Label1.Caption = "第二阶段……"
            Else
                Label1.Caption = "第三阶段……"
            End If
        End If
        Label2.Caption = i
        For j = 1 To 10000
            DoEvents
        Next
    Next
End Sub
--------------------编程问答-------------------- 语句有错误。 

Private Sub Command1_Click() 
Dim i, j As Long 
    For i = 1 To 100 
                
        If i <= 30 Then 
            Label1.Caption = "第一阶段……" 
        Else 
            If i <= 65 Then 
                Label1.Caption = "第二阶段……" 
            Else 
                Label1.Caption = "第三阶段……" 
            End If 
        End If 
        Label2.Caption = i 
        For j = 1 To 10000 
            DoEvents 
        Next 
    Next 
End Sub
of 123说的对  --------------------编程问答-------------------- 最近总是在用C#
引用 6 楼 of123 的回复:
语句有错误。

 Private Sub Command1_Click()
 Dim i, j As Long
     For i = 1 To 100

         If i  <= 30 Then
             Label1.Caption = "第一阶段……"
         Else
             If i  <= 65 Then
                 Label1.Caption = "第二阶段……"
             Else
                 Label1.Caption = "第三阶段……"
             End If
         End If
         Label2.Caption = i
         For j = 1 To 10000
             DoEvents
         Next
     Next
 End Sub
--------------------编程问答-------------------- 没什么‘错误’吧!

只是:
Dim i, j As Long

有点小小的“不合理”而已。
补充:VB ,  基础类
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,