真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網站制作重慶分公司

vb.net轉存動態(tài)控件的簡單介紹

我知道在VB和VB.net中怎樣添加動態(tài)控件,可是我添加的這些控件怎樣添加相應的事件呢?

Dim Text() As Object

創(chuàng)新互聯(lián)建站服務項目包括寬城網站建設、寬城網站制作、寬城網頁制作以及寬城網絡營銷策劃等。多年來,我們專注于互聯(lián)網行業(yè),利用自身積累的技術優(yōu)勢、行業(yè)經驗、深度合作伙伴關系等,向廣大中小型企業(yè)、政府機構等提供互聯(lián)網行業(yè)的解決方案,寬城網站推廣取得了明顯的社會效益與經濟效益。目前,我們服務的客戶以成都為中心已經輻射到寬城省份的部分城市,未來相信會繼續(xù)擴大服務區(qū)域并繼續(xù)獲得客戶的支持與信任!

Private Sub Form_Load()

Dim i As Integer

Dim nTop As Long

ReDim Text(1 To 10)

For i = 1 To 10

Set Text(i) = Controls.Add("VB.TextBox", "Text1" CStr(i))

Text(i).Height = 300

Text(i).Top = nTop

Text(i).Visible = True

nTop = nTop + 30 * 15

Next i

End Sub

添加動態(tài)控件。你可以自己試試看。 form1上什么都不加運行這個程序后會發(fā)現(xiàn)自動生成了10個text控件

如何在vb.net里面動態(tài)添加控件

Private WithEvents NewTextBox As TextBox

'通過使用WithEvents關鍵字聲明一個對象變量為新的命令按鈕

Private Sub Command1_Click()

If NewTextBox Is Nothing Then

Set NewTextBox = Controls.Add("VB.TextBox", "cmdNew", Form1)

NewTextBox.Move 200, 200

NewTextBox.Width = Form1.Width - 450

NewTextBox.Height = Form1.Height - 1400

NewTextBox.Visible = True

End If

End Sub

Private Sub Command2_Click()

If NewTextBox Is Nothing Then

Exit Sub

Else

Controls.Remove NewTextBox

Set NewTextBox = Nothing

End If

End Sub

vb.net 動態(tài)生成的控件,事件也動態(tài)加,怎么做呢?

你需要的應該是反射,類似如下,我測試通過的:

Imports?System.Reflection

Public?Class?Form1

Public?Sub?MMMToolStripMenuItem_Click(sender?As?Object,?e?As?EventArgs)?Handles?MMMToolStripMenuItem.Click

MsgBox("menu?click")

End?Sub

'在按鈕事件處理里面通過反射名稱調用相應菜單事件

Public?Sub?CallEventMethod(sender?As?Object,?e?As?EventArgs)

Dim?b?As?Button?=?sender?'獲取點擊的按鈕

'拼接菜單事件名稱

Dim?MethodName?As?String?=?b.Name??"ToolStripMenuItem_Click"

Dim?t?As?Type?=?Me.GetType

Dim?m?As?MethodInfo?=?t.GetMethod(MethodName)

'反射方法

m.Invoke(Me,?New?Object()?{Nothing,?Nothing})

End?Sub

'動態(tài)生成了按鈕

Private?Sub?Form1_Load(sender?As?Object,?e?As?EventArgs)?Handles?MyBase.Load

Dim?btn?As?New?Button

btn.Location?=?New?Point(100,?100)

btn.Name?=?"MMM"?'關鍵

btn.Text?=?"MMM"

'注冊事件

AddHandler?btn.Click,?AddressOf?Me.CallEventMethod

Me.Controls.Add(btn)?

End?Sub

End?Class

VB.NET 動態(tài)控件 屬性問題

布局方面,建議你用FlowLayoutPanel,不用手工控制控件位置了。假設有一個FlowLayoutPanel1。

先在窗體類中建一個控件的集合:

Dim

TextBoxes

As

New

List(Of

TextBox)

在button1的

Click事件

中寫:

For

i

=

1

To

5

'5是每次加入的數(shù)量

Dim

newTextBox

As

New

TextBox()

'newTextBox.Size

=

New

Size(100,20)

'

TextBoxes.Add(newTextBox)

'加入我們的集合中

FlowLayoutPanel1.Controls.Add(newTextBox)

'加到窗體的FlowLayoutPanel中去

Next

i

然后button2的Click事件中:

For

Each

itemTextBox

As

TextBox

In

TextBoxes

'這里的itemTextBox.Text就代表每個TextBox里的文本

'如果你需要清空,調用TextBoxes.Clear()和FlowLayoutPanel.Controls.Clear()即可

Next

vb.net動態(tài)添加控件,并且綁定了一些事件,這些事件只能對最新生成的控件做修改,之前生成的無法修改

比如說這樣添加的計時器:

Dim Timer1 As New Timer

你要在合適的地方開始,比如窗體Load事件中,這樣:

Timer1.Interval = 1000 '單位毫秒,1000毫秒=1秒

Timer1.Enabled = True '啟用計時器

然后在代碼窗口上方下拉列表里選擇Timer1的Tick事件,自動添加代碼:

Private Sub Timer1_Tick(ByVal sender As Object, ByVal e As System.EventArgs) Handles Timer1.Tick

End Sub

這是計時器觸發(fā)的事件,每秒觸發(fā)一次,在這里面輸入循環(huán)判斷是否有日程即可。提示:你可以用Now對象獲取當前的日期和時間。


本文名稱:vb.net轉存動態(tài)控件的簡單介紹
文章源于:http://weahome.cn/article/hoejdj.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部