2012-06-07 68 views
2

我是WinForms VB NET編程的初學者。我需要在運行時創建文本框。VB.net代碼的一些困難

我發現例如在搜索引擎如何實現這一點:

Private Sub Command1_Click() 
    Dim TextControl As TextBox 
    ControlID = ControlID + 1 
    Load Text1(ControlID) 
    Set TextControl = Text1(ControlID) 
    With TextControl 
     .Left = (Text1(ControlID - 1).Left + Text1(ControlID - 1).Width) + 10 
     .Top = 20 
     .Width = 100 
     .Height = 20 
     .Visible = True 
    End With 
End Sub 

但我有例子的代碼中的一些困難。

有人會解釋下面的VB NET代碼行嗎?

Load Text1(ControlID) 
    Set TextControl = Text1(ControlID) 
    With TextControl 
    End With 
+0

嗯。你從哪裏得到那個的?據我所知,「Load」是VB6(及更早版本),並且在VB.NET中不存在。 (「Set」的存在是另一個線索,這可能不是VB.NET代碼) –

+1

這不是vb.net代碼 - 它是舊的visual basic代碼(我認爲VB 6)。雖然看起來相同,但vb.net並不向後兼容VB 6。您想在VB 6或VB.net中使用示例嗎? – Ando

+0

安藤,謝謝你我需要VB NET – Michael

回答

3

您可以檢查以下的例子,不正是你想要什麼:

Private Sub btnCreateTextbox_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCreateTextbox.Click 
    Dim textbox1 As New TextBox 
    textbox1.Name = "Textbox1" 
    textbox1.Size = New Size(170, 20) 
    textbox1.Location = New Point(167, 32) 
    GroupBox1.Controls.Add(textbox1) 
End Sub 

外觀參考,很好的解釋:http://www.authorcode.com/create-dynamic-textbox-and-label-in-vb-net/

1

這是VB代碼。

「加載文本1(ControlID)」 它表示將Text1(controlID)加載到內存中,Text1(controlID)是一個文本框控件。

+0

maom的例子,它不是vb.net嗎? – Michael

+1

是的,這是VB代碼,不是vb.net代碼 – maomifadacai

1

在設計時在期望的位置添加文本框在設計器文件中生成相同的代碼。複製代碼並粘貼在Command1_Click()下。