vb.net挂载事件的简单介绍

如何在 vb.net 为动态生成的控件添加事件并传递数据

'把图片的声明放在外面,类里面过程外面,而且要用As,不然等会儿没法用

成都创新互联公司服务热线:13518219792,为您提供成都网站建设网页设计及定制高端网站建设服务,成都创新互联公司网页制作领域十余年,包括iso认证等多个方面拥有丰富的网站营销经验,选择成都创新互联公司,为网站保驾护航!

Dim myPicture As New System.Windows.Forms.PictureBox()

'动态生成的控件,加一行

Private Sub UserControl1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load

Me.Panel3.Controls.Add(myPicture)

myPicture.Size =New System.Drawing.Size(115, 160)

myPicture.TabStop =False

myPicture.Name ="p"

myPicture.Cursor = Cursors.Hand

AddHandler myPicture.Click, AddressOf mypic_Click '添加事件

AddHandler returnid, AddressOf idReturned '绑定事件和过程

End Sub

'再来个事件,放在声明的地方,就是类里面、过程外面

Private Event returnid(ByVal id As String) '这个事件可以传递值哦~

'普通的单击事件

Private Sub mypic_Click()

RaiseEvent returnid(myPicture.Name)

End Sub

'会传值的事件过程

Private Sub idReturned(ByVal id As String)

Dim bookInfo As New BookInfo

bookInfo.Show()

Me.Parent.Enabled = False

'用id变量做点什么吧

End Sub

如果要改事件的签名(参数一类的)的话,得重写控件。你可以这样自己弄一个事件。

vb.net给控件加事件

两种方法:

1. 用WithEvents声明变量,这样你就可以像对待拖上去的控件一样操作:

Public Class Form3

WithEvents btn As New Button

Private Sub Form3_Load(sender As Object, e As EventArgs) Handles Me.Load

Controls.Add(btn)

End Sub

Private Sub btn_Click(sender As Object, e As EventArgs) Handles btn.Click

MsgBox(Now)

End Sub

End Class

2. 使用AddHandler 语句:

Public Class Form3

Private Sub Form3_Load(sender As Object, e As EventArgs) Handles Me.Load

Dim btn As New Button

AddHandler btn.Click, AddressOf btn_Click

Controls.Add(btn)

End Sub

Private Sub btn_Click(sender As Object, e As EventArgs)

MsgBox(Now)

End Sub

End Class

WithEvents (Visual Basic):

AddHandler 语句:

VB.net中怎么调用控件的事件

软糖来回答罗。

“调用事件”有歧义,你的意思是不是下面两种:

调用事件处理方法

直接调用对象名.方法名

'例如有这样一个按钮点击事件处理程序

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click

秒表.Start()

End Sub

'调用它直接用

Button1_Click(me, new EventArgs())

引发事件

Button1.Click.Invoke(me, new EventArgs())

另外 RaiseEvent 也可以引发事件,但不能使用 RaiseEvent 来引发派生窗体的控件事件,只有自己定义的类的事件才能用它引发。

如满意,请采纳,谢谢。

VB.NET求帮忙!...

新建窗体,把maximizebox属性和MinimizeBox 属性设为false,再添加一个Label1放置文字一个Picturebox1放图片。

在窗体的load事件中:

Private Sub Form1_Load() Handles Me.Load

Text="我的VB.NET程序"

PuctureBox1.Image=Image.FromFile(图片路径如e:\pic.jpg)

End Sub

窗体Click事件:

Private Sub Form1_Click() Handles Me.Click

Text="单击窗体"

Label1.Text="欢迎使用VB.NET"

End Sub

窗体DoubleClick事件

Private Sub Form1_DoubleClick() Handles Me.DoubleClick

Text="双击窗体"

Label1.Text = "谢谢使用!"

End Sub

我知道在VB和VB.net中怎样添加动态控件,可是我添加的这些控件怎样添加相应的事件呢?

Dim Text() As Object

Private Sub Form_Load()

Dim i As Integer

Dim nTop As Long

ReDim Text(1 To 10)

For i = 1 To 10

Set Text(i) = Controls.Add("VB.TextBox", "Text1" CStr(i))

Text(i).Height = 300

Text(i).Top = nTop

Text(i).Visible = True

nTop = nTop + 30 * 15

Next i

End Sub

添加动态控件。你可以自己试试看。 form1上什么都不加运行这个程序后会发现自动生成了10个text控件

文章题目:vb.net挂载事件的简单介绍
URL地址:https://www.cdcxhl.com/article28/docoijp.html

成都网站建设公司_创新互联,为您提供虚拟主机微信公众号搜索引擎优化网站建设企业网站制作手机网站建设

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

成都定制网站网页设计