vb 动态加载的控件,怎么激发其click事件

比如我动态添加了一个TextBox,控件名为“姓名”然后我怎么激发这个控件的Click事件,就是这个事件privatesub姓名_Click()怎么去激发?如果是设计时就... 比如我动态添加了一个TextBox ,控件名为“姓名”

然后我怎么激发这个控件的Click事件,就是这个事件private sub 姓名_Click()怎么去激发?如果是设计时就有的控件,这样写就能激发,但是动态添加的为什么就不管用了?

先题:我不要用控件组那样实现,还有没有别的办法?
展开
 我来答
艾迪康乐园
2013-10-23 · TA获得超过491个赞
知道小有建树答主
回答量:493
采纳率:0%
帮助的人:657万
展开全部
动态添加控件,就要预先生成控件数组。至少有一个已有控件,例如Text1(0)。
这要求你在设计阶段必须有该控件数组的Click事件过程。例如:
Private Sub Text1_Click(Index As Integer)
'处理代码
End Sub
当你添加一个控件的时候,就会获得一个新的i=Index。
你还可以通过i=Text1.UBound获取最新的Index。
你就可以直接调用Text1_Click(i)
Text1_Click(i)
也可以写成
Call Text1_Click(i)

OK!就这么简单!
追问
我上面说了啊,不想用控件数组,因为对其他的实现有影响,我在问除了用控件数组,还有木有其他的办法呀?
追答
不用控件数组,使用VB。NET就可以实现。
nefu_20061617
2013-10-23 · TA获得超过2342个赞
知道大有可为答主
回答量:1064
采纳率:72%
帮助的人:1479万
展开全部

在通用声明区用 Dim WithEvents 声明变量。

Dim WithEvents 姓名 As TextBox
Private Sub Form_Load()
  Set 姓名 = Me.Controls.Add("VB.TextBox", "姓名")
  姓名.Visible = True
End Sub
Private Sub 姓名_Click()
  MsgBox "点击了控件名为“姓名”的 TextBox "
End Sub
追问
谢谢,我试过了,不管用,呜呜呜!
追答
把你的代码复制下来看看
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式