注册 登录
编程论坛 VB6论坛

VB如何用实现自动50个按钮

vbyou126 发布于 2015-06-10 09:29, 627 次点击
VB用代何如何实现自动生产50个按钮,
9 回复
#2
vbyou1262015-06-10 09:30
只有本站会员才能查看附件,请 登录
#3
lianyicq2015-06-10 10:16
回复 2楼 vbyou126
程序代码:
Option Explicit
Private WithEvents cmdobject As CommandButton
Private Sub form_load()
  Dim i As Integer
  Dim a As String
  For i = 1 To 5
    a = "command" & i
    Set cmdobject = Controls.Add("", a)
    cmdobject.Visible = True
    cmdobject.Caption = i
    cmdobject.Left = i * cmdobject.Width + 10
  Next
End Sub
简单写了一个示例,看看.
#4
wmf20142015-06-10 10:43
简单点。控件数组应该能实现吧
#5
lianyicq2015-06-10 10:54
回复 4楼 wmf2014
解决方法是很简单,确实用到了控件数组,但具体如何做比较偏.我给他的例子,他如果试了,能发现问题.让他一步一步来
#6
风吹过b2015-06-10 12:57
看了三楼的代码,我总在想,如果需要 响应这个按钮的事件,该怎么写代码。
Private WithEvents cmdobject As CommandButton 这句只能响应最后一个按钮吧。
感觉还是定义为 控件数组 为好。
#7
lianyicq2015-06-10 13:02
回复 6楼 风吹过b
本来这个问题想让他自己发现的。
楼主的要求主要体现在"自动"上

[ 本帖最后由 lianyicq 于 2015-6-10 13:08 编辑 ]
#8
vbyou1262015-06-10 17:20
看到头痛,放弃了不看
#9
lianyicq2015-06-10 17:22
回复 8楼 vbyou126
本来不复杂,自己放弃了,就帮不上忙了
#10
落魄帝王2016-02-23 13:50
Option Explicit
Private WithEvents cmdobject As CommandButton
Private Sub form_load()
  Dim i As Integer
  Dim a As String
  For i = 1 To 50
    a = "command" & i
    Set cmdobject = Controls.Add(", a)
    cmdobject.Visible = True
    cmdobject.Caption = i
    cmdobject.Left = i * cmdobject.Width + 10
    If Width >= 3000 Then
    Set cmdobject.Left = 0
    cmdobject.Top = i * cmdobject.Height + 10
  Next
End Sub
没怎么学过VB的纯新来看看,我完全不知道怎么写,就这么写着看看,结果试了下,通不过,求教大神怎么搞?
1