日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

方法腳本1:vb.net如何知道用戶單擊的是哪個(gè)控件

 xzx淘淘 2019-04-19
    Private Sub ControlClick(ByVal sender As Object, ByVal e As System.EventArgs)
        '  MessageBox.Show(CType(sender, Control).Name)
        Text3.Text = CType(sender, Control).Text
    End Sub

    Private Sub T1數(shù)據(jù)庫操作_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        '利用循環(huán)將窗體中所有控件的Click事件Handle到指定過程,分析傳入?yún)?shù)sender返回單擊控件名.
        For Each C As Control In Panel1.Controls
            AddHandler C.MouseClick, AddressOf ControlClick
        Next
    End Sub
參考文檔:
1.vb.net如何知道用戶單擊的是哪個(gè)控件
利用循環(huán)將窗體中所有控件的Click事件Handle到指定過程,分析傳入?yún)?shù)sender返回單擊控件名.
Private Sub ControlClick(ByVal sender As Object, ByVal e As System.EventArgs)
MessageBox.Show(CType(sender, Control).Name)
End Sub
Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
For Each C As Control In Me.Controls
AddHandler C.MouseClick, AddressOf ControlClick
Next
End Sub
2.簡(jiǎn)述VB.NET AddHandler語句

在向大家詳細(xì)介紹VB.NET AddHandler語句之前,首先讓大家了解下代理是一個(gè)存儲(chǔ)方法索引的類,然后全面介紹VB.NET AddHandler語句。事件只是用來通知一個(gè)行為已經(jīng)發(fā)生的信息。在ObjectARX中,我們使用反應(yīng)器(reactor)來處理AutoCAD的事件。而在AutoCAD .NET API中,ObjectARX反應(yīng)器被換成了事件。

事件處理函數(shù)(或者叫回調(diào)函數(shù))是用來監(jiān)視和反饋程序中出現(xiàn)的事件。事件可以以不同的形式出現(xiàn)。

在介紹AutoCAD .NET API中的事件之前,讓我們先來簡(jiǎn)單地了解一下代理。

代理

代理是一個(gè)存儲(chǔ)方法索引的類(概念與函數(shù)指針類似)。代理對(duì)方法是類型安全的(與C中的函數(shù)指針類似)。代理有特定的形式和返回類型。代理可以封裝符合這種特定形式的任何方法。

代理的一個(gè)用途就是作為產(chǎn)生事件的類的分發(fā)器。事件是.NET環(huán)境中第一級(jí)別的對(duì)象。雖然VB.NET把事件處理的許多細(xì)節(jié)給隱藏掉了,但事件總是由代理來實(shí)現(xiàn)的。事件代理可以多次調(diào)用(就是它們可以存儲(chǔ)多于1個(gè)的事件處理方法的索引)。它們保存了用于事件的一個(gè)注冊(cè)事件處理的列表。一個(gè)典型的代理有以下的形式:

  1. Public Delegate Event (sender as Object, e as EventArgs) 

第一個(gè)參數(shù)sender表示引發(fā)事件的對(duì)象。

第二個(gè)參數(shù)e是一個(gè)EventArgs參數(shù)(或者是一個(gè)派生的類),這個(gè)對(duì)象通常包含用于事件處理函數(shù)的數(shù)據(jù)。

VB.NET AddHandler語句

要使用事件處理函數(shù),我們必須把它與事件聯(lián)系起來。這要通過使用VB.NET AddHandler語句。AddHandler和RemoveHandler允許你在運(yùn)行時(shí)連接、斷開或修改與事件聯(lián)系的處理函數(shù)。

當(dāng)我們使用VB.NET AddHandler語句時(shí),我們要確定事件引發(fā)者的名字,并要使用AddressOf語句來確定事件處理函數(shù),例如:

  1. AddHandler MyClass1.AnEvent, AddressOf EHandler 

前面我們說過要使用RemoveHandler語句從事件處理函數(shù)中斷開事件(移除聯(lián)系)。語法如下所示:

  1. RemoveHandler MyClass1.AnEvent, AddressOf EHandler 

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多