按钮控件数组
Public Class ButtonArray
??? Inherits System.Collections.CollectionBase
??? Private ReadOnly HostForm As System.Windows.Forms.Form
??? '創(chuàng)建類的構(gòu)造函數(shù)。
??? ' Visual Basic
??? Public Sub New(ByVal host As System.Windows.Forms.Form)
??????? HostForm = host
??????? 'Me.AddNewButton()
??? End Sub
?
??? Public Sub AddNewButton() '?AddHandler aButton.Click, AddressOf ClickHandler
??????? ' 創(chuàng)建 Button 類的新實(shí)例。
??????? Dim aButton As New System.Windows.Forms.Button
??????? ' 將按鈕添加到集合的內(nèi)部列表。
??????? Me.List.Add(aButton)
??????? ' 將按鈕添加到由 HostForm 字段
??????? ' 引用的窗體的控件集合中。
??????? HostForm.Controls.Add(aButton)
??????? ' 設(shè)置按鈕對(duì)象的初始屬性。
??????? aButton.Top = Count * 25
??????? aButton.Left = 100
??????? aButton.Tag = Me.Count
??????? aButton.Text = "按鈕 " & Me.Count.ToString
??????? '將事件與事件處理程序相關(guān)聯(lián)
??????? AddHandler aButton.Click, AddressOf ClickHandler
??? End Sub
??? '公開控件數(shù)組
??? Default Public ReadOnly Property Item(ByVal Index As Integer) As _
?? System.Windows.Forms.Button
??????? Get
??????????? Return CType(Me.List.Item(Index), System.Windows.Forms.Button)
??????? End Get
??? End Property
??? Public Sub Remove()
??????? ' 檢查以確保存在要?jiǎng)h除的按鈕。
??????? If Me.Count > 0 Then
??????????? ' 從宿主窗體控件集合中刪除添加到數(shù)組
??????????? ' 的最后一個(gè)按鈕。請(qǐng)注意在訪問數(shù)組時(shí)
??????????? ' 默認(rèn)屬性的使用。
??????????? HostForm.Controls.Remove(Me(Me.Count - 1))
??????????? Me.List.RemoveAt(Me.Count - 1)
??????? End If
??? End Sub
??? '創(chuàng)建公共事件處理程序
??? Public Sub ClickHandler(ByVal sender As Object, ByVal e As _
?? System.EventArgs)
??????? MessageBox.Show("您已單擊按鈕 " & CType(CType(sender, _
?????????? Button).Tag, String))
??? End Sub
轉(zhuǎn)載于:https://www.cnblogs.com/qiyuan/archive/2007/04/05/700964.html
總結(jié)
- 上一篇: 梦到抓八爪鱼预示着什么
- 下一篇: 梦到被打死预示着什么