这就是“如何在VB程序运行时添加和删除控件”了下面的代码,运行时在窗体有按钮的情况下加载新按钮!当点击新生成的按钮时,就删除该按钮 如需测试,就在窗体上放一个Command1控件.把它的Index属性设为"0"!Top属性设为"0"Private Sub Command1_Click(Index As Integer) Static CmdIdx As Integer
Select Case Index Case 0 CmdIdx = CmdIdx + 1 Load Command1(CmdIdx) Command1(CmdIdx).Top = CmdIdx * (Command1(Index).Top + Command1(Index).Height) Command1(CmdIdx).Visible = True Case Else MsgBox "我是新加载的按钮" Unload Command1(Index) CmdIdx = CmdIdx - 1 MsgBox "我走了...拜拜!" End Select
End Sub
下面代码在窗体上没有按钮的情况下创建一个按钮! 没有用Load方法加载的东西不能用Unload方法卸载!窗体是由一个Load方法加载的,只是你看不到,是VB帮你做了! 要隐藏一个按钮,可以设置按钮的"Visible"属性.True:显示,False隐藏!Option Explicit Private WithEvents cmdbtn As CommandButtonPrivate Sub cmdbtn_Click() MsgBox "悄悄的我来了..." cmdbtn.visible = false msgbox "我又悄悄的走了..." End SubPrivate Sub Form_Load() Set cmdbtn = Me.Controls.Add("VB.CommandButton", "cndbtn")
如需测试,就在窗体上放一个Command1控件.把它的Index属性设为"0"!Top属性设为"0"Private Sub Command1_Click(Index As Integer)
Static CmdIdx As Integer
Select Case Index
Case 0
CmdIdx = CmdIdx + 1
Load Command1(CmdIdx)
Command1(CmdIdx).Top = CmdIdx * (Command1(Index).Top + Command1(Index).Height)
Command1(CmdIdx).Visible = True
Case Else
MsgBox "我是新加载的按钮"
Unload Command1(Index)
CmdIdx = CmdIdx - 1
MsgBox "我走了...拜拜!"
End Select
End Sub
没有用Load方法加载的东西不能用Unload方法卸载!窗体是由一个Load方法加载的,只是你看不到,是VB帮你做了!
要隐藏一个按钮,可以设置按钮的"Visible"属性.True:显示,False隐藏!Option Explicit
Private WithEvents cmdbtn As CommandButtonPrivate Sub cmdbtn_Click()
MsgBox "悄悄的我来了..."
cmdbtn.visible = false
msgbox "我又悄悄的走了..."
End SubPrivate Sub Form_Load()
Set cmdbtn = Me.Controls.Add("VB.CommandButton", "cndbtn")
cmdbtn.Caption = "偶是按钮"
cmdbtn.Move (Me.ScaleWidth - cmdbtn.Width) \ 2, (Me.ScaleHeight - cmdbtn.Height) \ 2
cmdbtn.Visible = True
End Sub
'Form.Controls集合包括了Add方法、Remove方法...Private WithEvents cmdbtn As CommandButtonPrivate Sub cmdbtn_Click()
MsgBox "悄悄的我来了..."
'cmdbtn.Visible = False
Me.Controls.Remove "cmd1"
MsgBox "我又悄悄的走了..."
End SubPrivate Sub Form_Load()
Set cmdbtn = Me.Controls.Add("VB.CommandButton", "cmd1")
cmdbtn.Caption = "偶是按钮"
cmdbtn.Move (Me.ScaleWidth - cmdbtn.Width) \ 2, (Me.ScaleHeight - cmdbtn.Height) \ 2
cmdbtn.Visible = True
End Sub