共用方式為


Visual Basic 6.0 使用者可用的 TextBox 控制項

更新:2007 年 11 月

Visual Basic 6.0 的 TextBox 控制項在 Visual Basic 2008 中會以 Windows Form TextBox 控制項取代。有些屬性 (Property)、方法、事件及常數的名稱會改變,而且在一些情況下,行為方面也會有差異。

概念上的差異

在 Visual Basic 6.0 中,MaxLength 屬性決定可以輸入至 TextBox 控制項的最大字元數。如果您嘗試以程式設計方式插入文字,則文字會在 MaxLength 屬性指定的長度處截斷。

在 Visual Basic 2008 中,MaxLength 屬性的行為已不再適用於以程式設計方式加入的文字。若要複製 Visual Basic 6.0 行為,必須自行截斷字串。

在 Visual Basic 6.0 中,PasswordChar 屬性是 String 型別;而在 Visual Basic 2008 中則是 Char 型別。

此外,還有許多概念不同處,適用於所有控制項,包括資料繫結、字型處理、拖放作業、說明支援等各方面的差別。如需詳細資訊,請參閱 Visual Basic 6.0 使用者的 Windows Form 概念

TextBox 控制項的程式碼變更

下列範例顯示 Visual Basic 6.0 與 Visual Basic 2008 之間的程式撰寫技巧差異。

在 TextBox 控制項中搜尋的程式碼變更

下列程式碼示範如何在 TextBox 控制項中尋找字串並強調顯示字串。

' Visual Basic 6.0
Private Sub Form_Load ()
    Text1.Text = "Two of the peak human experiences"
    Text1.Text = Text1.Text & " are good food and classical music."
End Sub
Private Sub Form_Click ()
    Dim Search, Where
    ' Get search string from user.
    Search = InputBox("Enter text to be found:")
    ' Find string in text.
    Where = InStr(Text1.Text, Search)
    If Where Then
        Text1.SetFocus
        Text1.SelStart = Where - 1
        Text1.SelLength = Len(Search)
    Else
        MsgBox "String not found."
    End If
End Sub
' Visual Basic
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As _
System.EventArgs) Handles MyBase.Load
    TextBox1.Text = "Two of the peak human experiences are "
    TextBox1.Text = TextBox1.Text & "good food and classical music."
End Sub
Private Sub Form1_Click(ByVal sender As Object, ByVal e As _
System.EventArgs) Handles Me.Click
    Dim Search As String
    Dim Where As String
    ' Get search string from user.
    Search = InputBox("Enter text to be found:")
    ' Find string in text.
    Where = InStr(TextBox1.Text, Search)
    If Where Then
        TextBox1.Focus()
        TextBox1.SelectionStart = Where - 1
        TextBox1.SelectionLength = Len(Search)
    Else
        MsgBox("String not found.")
    End If
End Sub

限制 TextBox 控制項中字元數的程式碼變更

下列程式碼將示範如何使用 MaxLength 屬性來指定最大的字元數。

' Visual Basic 6.0
Private Sub Form_Load()
    Text1.MaxLength = 5
End Sub
Private Sub SetText()
    ' Only the first five characters will be displayed.
    Text1.Text = "Hello World"
End Sub
' Visual Basic
Private Sub Form1_Load2(ByVal sender As System.Object, ByVal e As _
System.EventArgs) Handles MyBase.Load
    TextBox1.MaxLength = 5
End Sub
Private Sub SetText()
    ' Truncate the string to equal MaxLength.
    TextBox1.Text = Strings.Left("Hello World", TextBox1.MaxLength)
End Sub

TextBox 控制項屬性、方法和事件的對等用法

下表列出 Visual Basic 6.0 的屬性、方法和事件,以及其在 Visual Basic 2008 的對等用法。但是不會列出具有相同名稱和行為的屬性、方法和事件。除非另外註明,否則所有 Visual Basic 2008 列舉型別 (Enumeration) 都會對應到 System.Windows.Forms 命名空間 (Namespace)。

此資料表提供解釋行為差異的主題之連結。若 Visual Basic 2008 中沒有直接的對等用法,則提供連結至替代的主題。

屬性

Visual Basic 6.0

Visual Basic 2008 對等用法

Alignment

TextAlign

Appearance

新實作,如需詳細資訊,請參閱 Visual Basic 6.0 使用者可用的 Appearance 和 BorderStyle 屬性

BackColor

BackColor

注意事項:

在 Visual Basic 2008 中會以不同方式處理色彩。如需詳細資訊,請參閱 Visual Basic 6.0 使用者可用的色彩處理方式

Container

Parent

DataChanged

DataField

DataFormat

DataMember

DataSource

新實作,如需詳細資訊,請參閱 Visual Basic 6.0 使用者可用的資料存取

DragIcon

DragMode

新實作,如需詳細資訊,請參閱 Visual Basic 6.0 使用者可用的拖放動作

Font

FontBold

FontItalic

FontName

FontSize

FontStrikethrough

FontUnderline

Font

注意事項:

在 Visual Basic 2008 中會以不同方式處理字型。如需詳細資訊,請參閱 Visual Basic 6.0 使用者可用的字型物件

ForeColor

ForeColor

注意事項:

在 Visual Basic 2008 中會以不同方式處理色彩。如需詳細資訊,請參閱 Visual Basic 6.0 使用者可用的色彩處理方式

Height

Height, Size

注意事項:

在 Visual Basic 2008 中會以不同方式處理座標。如需詳細資訊,請參閱 Visual Basic 6.0 使用者可用的座標系統

HelpContextID

新實作,如需詳細資訊,請參閱 Visual Basic 6.0 使用者可用的說明支援

HWnd

Handle

Index

新實作,如需詳細資訊,請參閱 Visual Basic 6.0 使用者可用的控制項陣列

Left

Left

注意事項:

在 Visual Basic 2008 中會以不同方式處理座標。如需詳細資訊,請參閱 Visual Basic 6.0 使用者可用的座標系統

LinkItem

LinkMode

LinkTimeOut

LinkTopic

新實作,如需詳細資訊,請參閱 Visual Basic 6.0 使用者可用的動態資料交換

Locked

ReadOnly

MouseIcon

新實作,如需詳細資訊,請參閱無法設定自訂 MousePointer

MousePointer

Cursor

如需常數的清單,請參閱 Visual Basic 6.0 使用者可用的 MousePointer

OLEDragMode

OLEDropMode

新實作,如需詳細資訊,請參閱 Visual Basic 6.0 使用者可用的拖放動作

Parent

FindForm 方法。

SelLength

SelectionLength

SelStart

SelectionStart

SelText

SelectedText

ToolTipText

ToolTip 元件。

如需詳細資訊,請參閱 Visual Basic 6.0 使用者可用的 ToolTip 支援

Top

Top

注意事項:

在 Visual Basic 2008 中會以不同方式處理座標。如需詳細資訊,請參閱 Visual Basic 6.0 使用者可用的座標系統

WhatsThisHelpID

新實作,如需詳細資訊,請參閱 Visual Basic 6.0 使用者可用的說明支援

Width

Width, Size

注意事項:

在 Visual Basic 2008 中會以不同方式處理座標。如需詳細資訊,請參閱 Visual Basic 6.0 使用者可用的座標系統

方法

Visual Basic 6.0

Visual Basic 2008 對等用法

Drag

新實作,如需詳細資訊,請參閱 Visual Basic 6.0 使用者可用的拖放動作

LinkExecute

LinkPoke

LinkRequest

LinkSend

新實作,如需詳細資訊,請參閱 Visual Basic 6.0 使用者可用的動態資料交換

Move

SetBounds

注意事項:

在 Visual Basic 2008 中會以不同方式處理座標。如需詳細資訊,請參閱 Visual Basic 6.0 使用者可用的座標系統

OLEDrag

新實作,如需詳細資訊,請參閱 Visual Basic 6.0 使用者可用的拖放動作

SetFocus

Focus

ShowWhatsThis

新實作,如需詳細資訊,請參閱 Visual Basic 6.0 使用者可用的說明支援

ZOrder

BringToFrontSendToBack 函式

事件

Visual Basic 6.0

Visual Basic 2008 對等用法

Change

TextChanged

DblClick

DoubleClick

DragDrop

DragOver

新實作,如需詳細資訊,請參閱 Visual Basic 6.0 使用者可用的拖放動作

GotFocus

Enter

LinkClose

LinkError

LinkNotify

LinkOpen

新實作,如需詳細資訊,請參閱 Visual Basic 6.0 使用者可用的動態資料交換

LostFocus

Leave

OLECompleteDrag

OLEDragDrop

OLEDragOver

OLEGiveFeedback

OLESetData

OLEStartDrag

新實作,如需詳細資訊,請參閱 Visual Basic 6.0 使用者可用的拖放動作

Validate

Validating

升級注意事項

當 Visual Basic 6.0 應用程式升級為 Visual Basic 2008 時,所有 TextBox 控制項都會升級為 Windows Form TextBox 控制項,而屬性、方法和事件則升級為其對等用法。如果行為可能會不同,則在程式碼中插入升級註解。

請參閱

參考

TextBox 控制項概觀 (Windows Form)