`
wsql
  • 浏览: 11793836 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

vb.net eventargs sender and e

阅读更多

eventargs是包含事件数据的类的基类,用于传递事件的细节。

一般在源码中是以这样的情况出现的:protected void EventHandler(object sender, EventArgs e)

EventArgs是一个委托声明,这里的参数,前者是一个对象(其实这里传递的是对象的引用,如果是button1的click事件则sender就是button1),后面是包含事件数据的类的基类。

其实简单点说就是对象(object)sender导致了某个事件的发生,事件的内容就是(e)

在程序中的事件处理函数就是依赖EventHandler实现的:

比方说你点了一个按钮,程序怎么知道应该用哪个函数来处理这个动作呢?那么EventHandler会告诉程序:"button1(sender)被点击(e)了,请调用对应的处理函数"。当然这个函数是谁,这个函数要做什么,是由你自己写的。

再深入一层,这个过程实际上就是:你的动作被windows捕获,windows把这个动作作为系统消息发送给程序(可以看message结构),程序从自己的消息队列中不断的取出消息,并在消息循环中寻找对应的处理方式,这时message结构中的类似于sender和e就起到了引导程序使用正确的处理函数的作用。

归根究底,这个sender和e及其一整套的处理方式,只不过是windows消息机制的另外一种表现

分享到:
评论

相关推荐

    VB.Net常用语法

    三:ByVal sender As Object, ByVal e As System.EventArgs  这是最赏用事件传递参数。被封装于两个对象内, 如果你要传递相应的参数,要在这两个对象里面找,如当前鼠标位置为 e.X e.Y。在VB.Net中有些事件是...

    vb.net2012操作跨窗体控件(单线程和多线程两种方法)实例

    Private Sub form1_FormClosing(sender As Object, e As EventArgs) Handles Me.FormClosing ' If runThread.IsAlive = True Then runThread.Abort() End Sub Private Sub Button2_Click(sender As Object, e ...

    VB.net 网络通信(一收一发,包通).rar

    VB.net 网络通信(一收一发,包通),非常短小,适合初学者 Imports System.Net.Sockets Imports System.Net Imports System.Text Public Class Form1 Private Sub Form1_Load(sender As Object, e As ...

    VB.NET 小游戏 打地鼠

    用VB.NET做的小游戏--打地鼠 Public Class Form1 Inherits System.Windows.Forms.Form Dim pic As New PictureBox Dim goal As Integer Dim i As Integer Dim j As Integer Dim xx1() As Integer = {135, 277...

    VB.NET将任意图像文件设置为鼠标形状

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim fd As OpenFileDialog = New OpenFileDialog() fd.Filter = "图像文件(*.jpg;*.gif;*.png)...

    vb.net单片机发送与接收

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load '载入窗体初始化 GetSerialPortNames() '将搜到的串口在下拉菜单中显示出来 AxMSComm1.InBufferSize ...

    VB.NET 求两数之和.rar

     Private Sub BtnAdd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnAdd.Click  Dim FirstNum As Integer '定义第一个整型变量用于存放第一个数  Dim SecondNum As Integer '...

    vb.net跑表程序

    Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick msec += 1 If msec >= 100 Then msec = 0 sec += 1 ElseIf sec >= 60 Then sec = 0 min += 1 ...

    vb.net进制相互转换.rar

    vb.net进制相互转换 ... Private Sub Button2_Click(sender As Object, e As EventArgs) Handles 2.Button2.Click 3. Dim i1 As String 4. i1 = TextBox3.Text 5. TextBox4.Text = Convert.ToInt32(i1, 2) End Sub

    VB.Net透过JRO修复Access MDB

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click ' 将C:\db1.mdb 做Compact / Repair If Compact_MDB("C:\db1.mdb") Then MessageBox.Show("OK !") ...

    vb.net 文本浏览FolderBrowserDialog使用方法

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click 'Set the FolderBrowser dialog properties With (FolderBrowserDialog1) .Description = ...

    vb.net调用DotNetBarcode生成二维码

    Private Sub Button1 Click sender As Object e As EventArgs Handles Button1 Click Dim bc1 As DotNetBarcode New DotNetBarcode DotNetBarcode Types QRCode bc1 SaveFileType DotNetBarcode SaveFileTypes ...

    vb.net基础程序

    Vb.net 编程语言汇总及重要笔记 建立textbox和button等 视图---工具箱---工具箱中寻找textbox和button等 点击变化button字体 Public Class Form1 Private Sub Button1_Click(ByVal sender As System.Object, ByVal ...

    创建TXT文本并写入及查询以及数据库的写入与查询 交换位置 vb.net

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Try Dim path As String path = "C:\Documents and Settings\Administrator\My Documents\...

    VB.net打印十阶杨辉三角代码

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim i, j As Integer Dim n As Integer n = 10 Dim dete(n, n) As Integer Dim sum As ...

    vb.net世界上最强的错误捕捉代码

    非常详细的捕捉到错误信息,错误位置,错误行号,还有堆栈跟踪,这是... 在 WindowsApplication1.Form1.Button1_Click(Object sender, EventArgs e) 位置 C:\WindowsApplication1\WindowsApplication1\Form1.vb:行号 5

    VB 计算器 VB计算器 VB.NET计算器 C#计算器

    Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Ent.click("1") TextBox1.Text = Ent.total Call CleanLabel() End Sub Protected Sub Button2_Click(ByVal sender As ...

    VB.NET Draw绘图实例并添加文字标注.rar

     Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click  'graph.DrawEllipse(mypen1, 50, 50, 100, 100) ' 绘制圆  graph.DrawEllipse(mypen1, ...

    VB.Net 控制 QQ发送信息

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click '1234567是对方的QQ号 WebBrowser1.Navigate("tencent://message/?uin=1234567&Site=lvehe&Menu...

    vb。net做的MP3播放器

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click OpenFileDialog1.ShowDialog() AxWindowsMediaPlayer1.URL = OpenFileDialog1.FileName 。。。

Global site tag (gtag.js) - Google Analytics