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

帮我看看这段代码为什么不对

Private Sub Form_Load()
Dim pai As Integer, lei As String
Dim SZlei
Static s
s = 0
lei = "10,20,30"
pai = 3
SZlei = Split(lei, ",")
If Index = 0 Then
For j = 1 To pai
   For z = 1 To SZlei(j - 1)
        Load Command1(z)
        Command1(z).Visible = True
        Command1(z).Left = Command1(z - 1).Left + 500
        s = s + 1
        Command1(s).Caption = s
   Next z
   s = s + 1
   Load Command1(s)
   Command1(s).Visible = True
   Command1(s).Left = Command1(s - 1).Left + 500

   Command1(s).Caption = s
Next j

End If

End Sub

我的本意是打出这样的形状
000
000000
000000000 --------------------编程问答-------------------- 没人帮我吗 痛苦的找问题中啊 --------------------编程问答--------------------

  For z = 1 To SZlei(j - 1) 
        Load Command1(z) 
        Command1(z).Visible = True 
        Command1(z).Left = Command1(z - 1).Left + 500 
        s = s + 1 
        Command1(s).Caption = s 
  Next z 

第一次z从1到10,第二次z从1到20,数组当然已经加载了 --------------------编程问答-------------------- 楼主这程序是要作什么? 我没看明白 --------------------编程问答-------------------- 你到底要干什么?将加载的按钮排列成
000 
000000 
000000000
还输出
000 
000000 
000000000字符 --------------------编程问答--------------------
Private Sub Form_Load()
Dim pai As Integer, lei As String
Dim SZlei
Static s
s = 0
lei = "10,20,30"
pai = 3
SZlei = Split(lei, ",")
If Index = 0 Then
For j = 1 To pai
  For Z = 1 To SZlei(j - 1)
 If Z > Command1.Count - 1 Then
        Load Command1(Z)
     
        Command1(Z).Visible = True
        Command1(Z).Left = Command1(Z - 1).Left + 500
         End If
        Next Z
        s = Z - 1
  s = s + 1
  Load Command1(s)
  Command1(s).Visible = True
  Command1(s).Left = Command1(s - 1).Left + 500

  Command1(s).Caption = s
Next j

End If

End Sub
--------------------编程问答-------------------- 上面的代码只是能运行,不知道你要做什么? --------------------编程问答-------------------- 上面代码的问题就是控件索引相同反复加载导致出错. --------------------编程问答-------------------- 这是排列按钮的代码
Private Sub Form_Load()
Form1.Width = Command1(0).Width * 10
For I = 1 To 17
Load Command1(I)
Command1(I).Visible = True
Command1(I).Left = Command1(I - 1).Left + Command1(I).Width + 20
Command1(I).Top = Command1(I - 1).Top
If I = 3 Or I = 9 Then
Command1(I).Left = Command1(0).Left
 Command1(I).Top = Command1(I - 1).Top + Command1(I - 1).Height + 20
 End If
 Next
End Sub
补充:VB ,  基础类
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,