网站建设资讯

NEWS

网站建设资讯

vb.net事件存取器的简单介绍

vb.net 怎么用事件触发的方式读取串口数据

首先:

永定网站建设公司创新互联公司,永定网站设计制作,有大型网站制作公司丰富经验。已为永定上千提供企业网站建设服务。企业网站搭建\成都外贸网站制作要多少钱,请找那个售后服务好的永定做网站的公司定做!

textbox里没有显示,是因为SerialPort1和TextBox2不是同一线程创建的,需要跨线程操作。需要用到委托,这样才能显示出来。

其次:

我觉得用串口的接收数据事件更好一些。

下面代码供参考:

'----------------------

'串口接收数据事件,其实比用定时器更好,

'触发事件的条件可以自己在form_load中设置ReceivedBytesThreshold属性数值,默认为ReceivedBytesThreshold=1

Private Sub SerialPort1_DataReceived(ByVal sender As Object, ByVal e As System.IO.Ports.SerialDataReceivedEventArgs) Handles SerialPort1.DataReceived

Dim strRecvData As String = ""

strRecvData = SerialPort1.ReadExisting

Call disPlayComData(strRecvData)

End Sub

Delegate Sub callback(ByVal strT As String) '定义委托

Sub showString(ByVal comdata As String) '显示结果

Me.TextBox1.Text = "结果:" comdata

End Sub

Sub disPlayComData(ByVal strTmp As String) '判定是否为跨线程

If Me.TextBox1.InvokeRequired Then

Dim d As New callback(AddressOf showString)

Me.Invoke(d, New Object() {strTmp})

Else

Me.TextBox1.Text = strTmp

End If

End Sub

vb.net高手请帮帮我看看下面这代码什么意思,详解哦,先谢了,Handles 作用是什么

在VB.Net当中,事件的"关联"是需要明显标志的,不像vb6当中,声明一个过程就是事件执行过程了

Handles用来静态"关联"一个或多个事件到一个过程

"关联"时,过程的签名必须与事件的签名相同(签名的意义请查看相关文档)

在VB.Net当中,事件也是一个对象(VB.Net当中一切皆为对象)

使用Handles时实际就相当于创建了一个对委托的实现(委托的意义请查看相关文档)

可以简单的认为,当事件被触发时,被Handles"关联"了的那些过程代码将被执行

而且,被"关联"的过程可以任意起名,不需要与事件和对象的名称相对应

上述代码如果去掉Handles 及其后面的内容,它将是一个最普通不过的过程,与其它过程没有两样,也不会有任何事件被触发时去执行这段代码,正因为加入了Handles 及其后面的一堆事件,它才会因事件被触发而被执行

说得再简单一点: 当PictureBox1.DoubleClick, PictureBox4.DoubleClick, PictureBox3.DoubleClick,PictureBox2.DoubleClick当中的任何一个事件被触发时,上述这个过程的代码都将被执行

再说说参数: sender表示触发了此事件的对象,在这里就是PictureBox1/PictureBox2/PictureBox3/PictureBox4当中的某一个,利用它能知道到底是哪个对象触发了此事件,e在这里没有用处,利用不到什么,之所以有它,是因为Object/EventArgs是.Net事件的基本签名方式,它的好处在你以后对.Net深入之后能体会到.

这些参数的值都是通过被触发的事件传递过来的,可以简单的认为[事件调用了此过程并为参数赋了值]

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的Form的所有事件

名称

说明

Activated

当使用代码激活或用户激活窗体时发生。

AutoSizeChanged

当 AutoSize 属性更改时发生。

AutoValidateChanged

当 AutoValidate 属性更改时发生。

BackColorChanged

当 BackColor 属性的值更改时发生。(从 Control 继承。)

BackgroundImageChanged

当 BackgroundImage 属性的值更改时发生。(从 Control 继承。)

BackgroundImageLayoutChanged

当 BackgroundImageLayout 属性更改时发生。(从 Control 继承。)

BindingContextChanged

当 BindingContext 属性的值更改时发生。(从 Control 继承。)

CausesValidationChanged

当 CausesValidation 属性的值更改时发生。(从 Control 继承。)

ChangeUICues

焦点或键盘用户界面 (UI) 提示更改时发生。(从 Control 继承。)

Click

在单击控件时发生。(从 Control 继承。)

ClientSizeChanged

当 ClientSize 属性的值更改时发生。(从 Control 继承。)

Closed

关闭窗体时发生。

Closing

关闭窗体时发生。

ContextMenuChanged

当 ContextMenu 属性的值更改时发生。(从 Control 继承。)

ContextMenuStripChanged

当 ContextMenuStrip 属性的值更改时发生。(从 Control 继承。)

ControlAdded

在将新控件添加到 Control.ControlCollection 时发生。(从 Control 继承。)

ControlRemoved

在从 Control.ControlCollection 移除控件时发生。(从 Control 继承。)

CursorChanged

当 Cursor 属性的值更改时发生。(从 Control 继承。)

Deactivate

当窗体失去焦点并不再是活动窗体时发生。

Disposed

当通过调用 Dispose 方法释放组件时发生。(从 Component 继承。)

DockChanged

当 Dock 属性的值更改时发生。(从 Control 继承。)

DoubleClick

在双击控件时发生。(从 Control 继承。)

DragDrop

拖放操作完成时发生。(从 Control 继承。)

DragEnter

在将对象拖入控件的边界时发生。(从 Control 继承。)

DragLeave

将对象拖出控件的边界时发生。(从 Control 继承。)

DragOver

在将对象拖到控件的边界上发生。(从 Control 继承。)

EnabledChanged

在 Enabled 属性值更改后发生。(从 Control 继承。)

Enter

进入控件时发生。(从 Control 继承。)

FontChanged

在 Font 属性值更改时发生。(从 Control 继承。)

ForeColorChanged

在 ForeColor 属性值更改时发生。(从 Control 继承。)

FormClosed

关闭窗体后发生。

FormClosing

关闭窗体前发生。

GiveFeedback

在执行拖动操作期间发生。(从 Control 继承。)

GotFocus

在控件接收焦点时发生。(从 Control 继承。)

HandleCreated

在为控件创建句柄时发生。(从 Control 继承。)

HandleDestroyed

在控件的句柄处于销毁过程中时发生。(从 Control 继承。)

HelpButtonClicked

单击“帮助”按钮时发生。

HelpRequested

用户请求控件帮助时发生。(从 Control 继承。)

ImeModeChanged

在 ImeMode 属性更改后发生。(从 Control 继承。)

InputLanguageChanged

更改窗体的输入语言后发生。

InputLanguageChanging

当用户尝试更改窗体的输入语言时发生。

Invalidated

控件的显示要求重新绘制时发生。(从 Control 继承。)

KeyDown

在控件有焦点的情况下按下键时发生。(从 Control 继承。)

KeyPress

在控件有焦点的情况下字符、空格或退格键时发生。(从 Control 继承。)

KeyUp

在控件有焦点的情况下释放键时发生。(从 Control 继承。)

Layout

在控件应重新定位其子控件时发生。(从 Control 继承。)

Leave

在输入焦点离开控件时发生。(从 Control 继承。)

Load

在第一次显示窗体前发生。

LocationChanged

在 Location 属性值更改后发生。(从 Control 继承。)

LostFocus

在控件失去焦点时发生。(从 Control 继承。)

MarginChanged

当 Margin 属性更改时发生。

MaximizedBoundsChanged

在 MaximizedBounds 属性的值更改后发生。

MaximumSizeChanged

在 MaximumSize 属性的值更改后发生。

MdiChildActivate

在多文档界面 (MDI) 应用程序内激活或关闭 MDI 子窗体时发生。

MenuComplete

当窗体菜单失去焦点时发生。

MenuStart

当窗体菜单接收焦点时发生。

MinimumSizeChanged

在 MinimumSize 属性的值更改后发生。

MouseCaptureChanged

当控件失去鼠标捕获时发生。(从 Control 继承。)

MouseClick

用鼠标单击控件时发生。(从 Control 继承。)

MouseDoubleClick

用鼠标双击控件时发生。(从 Control 继承。)

MouseDown

当鼠标指针位于控件上并按下鼠标键时发生。(从 Control 继承。)

MouseEnter

在鼠标指针进入控件时发生。(从 Control 继承。)

MouseHover

在鼠标指针停放在控件上时发生。(从 Control 继承。)

MouseLeave

在鼠标指针离开控件时发生。(从 Control 继承。)

MouseMove

在鼠标指针移到控件上时发生。(从 Control 继承。)

MouseUp

在鼠标指针在控件上并释放鼠标键时发生。(从 Control 继承。)

MouseWheel

在控件有焦点且鼠标轮移动时发生。(从 Control 继承。)

Move

在移动控件时发生。(从 Control 继承。)

PaddingChanged

在控件空白区更改时发生。(从 Control 继承。)

Paint

在重绘控件时发生。(从 Control 继承。)

ParentChanged

在 Parent 属性值更改时发生。(从 Control 继承。)

PreviewKeyDown

在焦点位于此控件上的情况下,当有按键动作时发生(在 KeyDown 事件之前发生)。(从Control 继承。)

QueryAccessibilityHelp

在 AccessibleObject 为辅助功能应用程序提供帮助时发生。(从 Control 继承。)

QueryContinueDrag

在拖放操作期间发生,并且允许拖动源确定是否应取消拖放操作。(从 Control 继承。)

RegionChanged

当 Region 属性的值更改时发生。(从 Control 继承。)

Resize

在调整控件大小时发生。(从 Control 继承。)

ResizeBegin

窗体进入大小调整模式时发生。

ResizeEnd

窗体退出大小调整模式时发生。

RightToLeftChanged

在 RightToLeft 属性值更改时发生。(从 Control 继承。)

RightToLeftLayoutChanged

更改 RightToLeftLayout 属性值之后发生。

Scroll

用户或代码滚动工作区时发生。(从 ScrollableControl 继承。)

Shown

只要窗体是首次显示就发生。

SizeChanged

在 Size 属性值更改时发生。(从 Control 继承。)

StyleChanged

在控件样式更改时发生。(从 Control 继承。)

SystemColorsChanged

系统颜色更改时发生。(从 Control 继承。)

TabIndexChanged

此 API 支持 产品 基础结构,不能在代码中直接使用。 当 TabIndex 属性的值更改时发生。

TabStopChanged

当 TabStop 属性更改时发生。

TextChanged

在 Text 属性值更改时发生。(从 Control 继承。)

Validated

在控件完成验证时发生。(从 Control 继承。)

Validating

在控件验证时发生。(从 Control 继承。)

VisibleChanged

在 Visible 属性值更改时发生。(从 Control 继承。)

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事件存取器的简单介绍
URL网址:http://njwzjz.com/article/dschohe.html