关于vb.net如何自定事件的信息

vb.net给控件加事件两种方法vb.net如何自定事件:
1. 用WithEvents声明变量vb.net如何自定事件,这样vb.net如何自定事件你就可以像对待拖上去vb.net如何自定事件的控件一样操作vb.net如何自定事件:
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里定义的控件数组怎么定义事件Imports System.Text
Imports System.Windows
Imports System.Windows.Forms
Public Class Netin '类 名
'Inherits Forms.Form
Public Shared Netin As New Form
Public components As ComponentModel.IContainer
Protected Overrides Sub Finalize()
MyBase.Finalize()
End Sub
DebuggerStepThrough()
Public Sub InitializeComponent()
Me.components = New ComponentModel.Container()
Dim resources As ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(bjt))
Me.TextBox1 = New TextBox(Me.components)
Me.Button1 = New Button(Me.components)
'For … Next
Me.Controls.Add(Me.TextBox1)
Me.Controls.Add(Me.Button1)
Me.m = New ContextMenuStrip(Me.components)
Me.m1.Text = "菜单项1"
'设置并添加相关控件,(窗体)Netin 初始化 。
End Sub
Private Sub Form_Load(sender As Object, e As EventArgs) Handles Me.Load
'加载后显示窗体Netin 。
End Sub
Public Sub ObjClick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click,Button2.Click,Button3.Click,TextBox1.Click
MessageBox.Show("你按了鼠标")
End Sub
【关于vb.net如何自定事件的信息】Public WithEvents TextBox1 As TextBox
Public WithEvents Button1 As Button
Public WithEvents Button2 As Button
Public WithEvents Button3 As Button
Friend WithEvents m As ContextMenuStrip
Friend WithEvents m1 As ToolStripMenuItem
End Class
Class MainWindow
Netin.Show()
Netin.Button2.Text = "Main"
……
vb.net中的事件函数,怎样为(sender,e)中的e增加自定义的参数?继承button,然后增加事件
并且自定义EventArg
思路:
class MyEventArg :EventArg
{
public long MyNum
{
set{ myNum = value;}
get{ return myNum; }
}
private long myNum ;
}
class MyButton:System.Windows.Forms.Button
{
public delegate void MyClick(object sender,MyEventArg e);
public event MyClick OnMyClick;
private MyEventArg myE = new MyEventarg();
protected override void OnClick(EventArgs e)
{
if(OnMyClick != null)
{
OnMyClick(null,myE);
}
base.OnClick(e);
}
}
vb.net 自定义事件变量值的改变本身就是你程序控制的,也就是说它的变化完全是在你掌控中的,做变量值改变的触发事件实在没有价值 。
通常编程者关心的应该是用户操作的控件值发生变化,但这些控件的事件通常都是定义好的 , 且已经定义的非常全了 。
猜测搂主其实是想学习自己制作控件 , 那就高深了,很多底层的事件通常都是从基本控件中获得的!
vb.net定义动态控件事件给你个例子就知道了
Public Class Form1
'演示为动态添加的控件添加事件
Private WithEvents Tb As New TextBox '方法2必须这样写
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
' Dim Tb As New TextBox
Tb.Name = "Textbox1"
Tb.Text = "文本框1"
Controls.Add(Tb)
AddHandler Tb.KeyPress, AddressOf XX '方法1,移动鼠标触发
End Sub
Private Sub XX()
MsgBox("AddHandler方法")
End Sub
Private Sub ShowClick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Tb.Click '方法2,单击触发
MsgBox("Handles方法 , 你点击了"sender.name)
End Sub
End Class
在VB中,怎样通过关键字Event定义用户自己的事件?分类:电脑/网络程序设计其他编程语言
问题描述:
语法是怎样的呢?谢谢@
解析:
Event 语句
定义用户自定义的事件 。
语法[Public] Event procedurename [(arglist)]
Event 语句包含下面部分:
部分 描述
Public 可选的 。指定该 Event 在整个工程中都是可见的 。缺省情况下 Events 类型是 Public 。应注意,事件只能在所声明的模块中产生 。
procedurename 必需的 。事件的名称;遵循标准的变量命名约定 。
arglist 参数的语法及语法的各个部分如下:
[ByVal | ByRef] varname[( )] [As type]
部分 描述
ByVal 可选的 。表示该参数是按值传递的 。
ByRef 可选的 。表示该参数是按地址传递的 。ByRef 是 Visual Basic 的缺省设置 。
varname 必需的 。代表要传递给过程的参数变量的名称;遵循标准的变量命名约定 。
type 可选的 。指传递给过程的参数的数据类型;可以是 Byte、布尔、Integer、Long、Currency、Single、Double、Decimal(目前尚不支持)、Date、String(只支持变长)、Object、Variant、用户定义类型或对象类型 。
说明
事件被声明之后,就可以使用 RaiseEvent 语句来产生该事件 。如果在标准模块中出现 Event 声明,就会产生语法错误 。不能声明带返回值的事件 。在下面的代码段中,给出了声明事件和产生事件的典型事件:
'在类模块的模块级中声明一个事件
Event LogonCompleted (UserName as String)
Sub
RaiseEvent LogonCompleted("AntoineJan")
End Sub
注意 可以象声明过程的参数一样来声明事件的参数,但有以下不同:事件不能有带命名参数、Optional 参数、或者 ParamArray 参数 。事件没有返回值 。
参考MSDN
vb.net如何自定事件的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于、vb.net如何自定事件的信息别忘了在本站进行查找喔 。

    推荐阅读