Visual Basic 6.0 사용자를 위한 TextBox 컨트롤
업데이트: 2007년 11월
Visual Basic 6.0의 TextBox 컨트롤은 Visual Basic 2008에서 Windows Forms TextBox 컨트롤로 대체되었습니다. 일부 속성, 메서드, 이벤트 및 상수의 이름이 다르고 경우에 따라서는 동작도 다릅니다.
개념적 차이
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 Forms 개념을 참조하십시오.
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 열거형은 System.Windows.Forms 네임스페이스로 매핑됩니다.
이 표에서는 동작의 차이점을 설명하는 항목에 대한 링크를 제공합니다. 직접 해당하는 요소가 Visual Basic 2008에 없는 경우에는 다른 방법을 제시하는 항목에 대한 링크를 제공합니다.
속성
Visual Basic 6.0 |
동일한 기능의 Visual Basic 2008 요소 |
||
---|---|---|---|
Alignment |
|||
Appearance |
새롭게 구현되었습니다. 자세한 내용은 Visual Basic 6.0 사용자를 위한 Appearance 및 BorderStyle 속성을 참조하십시오. |
||
BackColor |
|
||
Container |
|||
DataChanged DataField DataFormat DataMember DataSource |
새롭게 구현되었습니다. 자세한 내용은 Visual Basic 6.0 사용자를 위한 데이터 액세스를 참조하십시오. |
||
DragIcon DragMode |
새롭게 구현되었습니다. 자세한 내용은 Visual Basic 6.0 사용자를 위한 끌어서 놓기를 참조하십시오. |
||
Font FontBold FontItalic FontName FontSize FontStrikethrough FontUnderline |
|
||
ForeColor |
|
||
Height |
|
||
HelpContextID |
새롭게 구현되었습니다. 자세한 내용은 Visual Basic 6.0 사용자를 위한 도움말 지원을 참조하십시오. |
||
HWnd |
|||
Index |
새롭게 구현되었습니다. 자세한 내용은 Visual Basic 6.0 사용자를 위한 컨트롤 배열을 참조하십시오. |
||
Left |
|
||
LinkItem LinkMode LinkTimeOut LinkTopic |
새롭게 구현되었습니다. 자세한 내용은 Visual Basic 6.0 사용자를 위한 동적 데이터 교환을 참조하십시오. |
||
Locked |
|||
MouseIcon |
새롭게 구현되었습니다. 자세한 내용은 사용자 지정 MousePointer를 설정할 수 없습니다.를 참조하십시오. |
||
MousePointer |
상수 목록은 Visual Basic 6.0 사용자를 위한 MousePointer를 참조하십시오. |
||
OLEDragMode OLEDropMode |
새롭게 구현되었습니다. 자세한 내용은 Visual Basic 6.0 사용자를 위한 끌어서 놓기를 참조하십시오. |
||
Parent |
FindForm 메서드 |
||
SelLength |
|||
SelStart |
|||
SelText |
|||
ToolTipText |
ToolTip 구성 요소입니다. 자세한 내용은 Visual Basic 6.0 사용자를 위한 도구 설명 지원을 참조하십시오. |
||
Top |
|
||
WhatsThisHelpID |
새롭게 구현되었습니다. 자세한 내용은 Visual Basic 6.0 사용자를 위한 도움말 지원을 참조하십시오. |
||
Width |
|
메서드
Visual Basic 6.0 |
동일한 기능의 Visual Basic 2008 요소 |
||
---|---|---|---|
Drag |
새롭게 구현되었습니다. 자세한 내용은 Visual Basic 6.0 사용자를 위한 끌어서 놓기를 참조하십시오. |
||
LinkExecute LinkPoke LinkRequest LinkSend |
새롭게 구현되었습니다. 자세한 내용은 Visual Basic 6.0 사용자를 위한 동적 데이터 교환을 참조하십시오. |
||
Move |
|
||
OLEDrag |
새롭게 구현되었습니다. 자세한 내용은 Visual Basic 6.0 사용자를 위한 끌어서 놓기를 참조하십시오. |
||
SetFocus |
|||
ShowWhatsThis |
새롭게 구현되었습니다. 자세한 내용은 Visual Basic 6.0 사용자를 위한 도움말 지원을 참조하십시오. |
||
ZOrder |
BringToFront 또는 SendToBack 함수 |
이벤트
Visual Basic 6.0 |
동일한 기능의 Visual Basic 2008 요소 |
---|---|
Change |
|
DblClick |
|
DragDrop DragOver |
새롭게 구현되었습니다. 자세한 내용은 Visual Basic 6.0 사용자를 위한 끌어서 놓기를 참조하십시오. |
GotFocus |
|
LinkClose LinkError LinkNotify LinkOpen |
새롭게 구현되었습니다. 자세한 내용은 Visual Basic 6.0 사용자를 위한 동적 데이터 교환을 참조하십시오. |
LostFocus |
|
OLECompleteDrag OLEDragDrop OLEDragOver OLEGiveFeedback OLESetData OLEStartDrag |
새롭게 구현되었습니다. 자세한 내용은 Visual Basic 6.0 사용자를 위한 끌어서 놓기를 참조하십시오. |
Validate |
업그레이드 참고 사항
Visual Basic 6.0 응용 프로그램을 Visual Basic 2008로 업그레이드하면 모든 TextBox 컨트롤이 Windows Forms TextBox 컨트롤로 업그레이드되고 속성, 메서드 및 이벤트는 각각 해당하는 요소로 업그레이드됩니다. 동작에 차이가 있는 경우에는 코드에 업그레이드 주석이 삽입됩니다.