MsgBox 함수(Visual Basic)

업데이트: 2007년 11월

대화 상자에 메시지를 표시하고 사용자가 단추를 클릭할 때까지 대기한 다음 클릭된 단추를 나타내는 정수를 반환합니다.

Public Function MsgBox( _
   ByVal Prompt As Object, _
   Optional ByVal Buttons As MsgBoxStyle = MsgBoxStyle.OKOnly, _
   Optional ByVal Title As Object = Nothing _
) As MsgBoxResult

매개 변수

  • Prompt
    필수적 요소. 대화 상자에서 메시지로 표시되는 String 식입니다. Prompt의 최대 길이는 대략 1024자이며 사용되는 문자의 너비에 따라 달라집니다. Prompt가 두 줄 이상이면 각 줄 사이에 캐리지 리턴 문자(Chr(13)), 줄 바꿈 문자(Chr(10)) 또는 캐리지 리턴/줄 바꿈 문자 조합(Chr(13) & Chr(10))을 사용하여 줄을 나눌 수 있습니다.

  • Buttons
    선택적 요소. 표시할 단추의 수와 형식, 사용할 아이콘 스타일, 기본 단추의 ID 및 메시지 상자의 모달을 지정하는 값의 합을 나타내는 숫자 식입니다. Buttons를 생략한 경우 기본값은 0입니다.

  • Title
    선택적 요소. 대화 상자의 제목 표시줄에 표시되는 String 식입니다. Title을 생략하면 응용 프로그램 이름이 제목 표시줄에 나타납니다.

설정

다음 표에서는 MsgBoxStyle 열거형 값을 보여 줍니다.

멤버

설명

OKOnly

0

확인 단추만 표시합니다.

OKCancel

1

확인 및 취소 단추를 표시합니다.

AbortRetryIgnore

2

중단, 다시 시도 및 무시 단추를 표시합니다.

YesNoCancel

3

예, 아니요 및 취소 단추를 표시합니다.

YesNo

4

예 및 아니요 단추를 표시합니다.

RetryCancel

5

다시 시도 및 취소 단추를 표시합니다.

Critical

16

중대 오류 메시지 아이콘을 표시합니다.

Question

32

경고 쿼리 아이콘을 표시합니다.

Exclamation

48

경고 메시지 아이콘을 표시합니다.

Information

64

정보 메시지 아이콘을 표시합니다.

DefaultButton1

0

첫째 단추가 기본값입니다.

DefaultButton2

256

둘째 단추가 기본값입니다.

DefaultButton3

512

셋째 단추가 기본값입니다.

ApplicationModal

0

응용 프로그램이 모달입니다. 현재 사용 중인 응용 프로그램에서 작업을 계속하려면 먼저 메시지 상자에 응답해야 합니다.

SystemModal

4096

시스템이 모달입니다. 메시지 상자에 응답할 때까지 모든 응용 프로그램이 일시 중단됩니다.

MsgBoxSetForeground

65536

메시지 상자 창을 전경 창으로 지정합니다.

MsgBoxRight

524288

텍스트를 오른쪽에 맞춥니다.

MsgBoxRtlReading

1048576

히브리어와 아랍어 시스템에서처럼 오른쪽에서 왼쪽으로 텍스트를 읽도록 지정합니다.

첫째 값 그룹(0–5)은 대화 상자에 표시되는 단추의 개수와 유형을 설명합니다. 둘째 그룹(16, 32, 48, 64)은 아이콘 스타일을 설명하고, 셋째 그룹(0, 256, 512)은 기본 단추를 결정합니다. 넷째 그룹(0, 4096)은 메시지 상자의 모달을 결정하고, 다섯째 그룹은 메시지 상자 창이 전경 창인지 여부와 함께 텍스트의 맞춤과 방향을 지정합니다. Buttons 인수에 대한 최종 값을 산출하기 위해 숫자를 더하는 경우 각 그룹에서 하나의 숫자만 사용합니다.

반환 값

상수

OK

1

Cancel

2

Abort

3

Retry

4

Ignore

5

Yes

6

No

7

예외

예외 형식

오류 번호

조건

ArgumentException

5

Prompt가 String 식이 아니거나 Title이 올바르지 않습니다.

InvalidOperationException

5

프로세스가 사용자 대화형 모드로 실행되고 있지 않습니다.

InvalidEnumArgumentException

5

하나 이상의 매개 변수가 MsgBoxResult 또는 MsgBoxStyle 열거형의 멤버가 아닙니다.

비구조적 오류 처리를 사용하는 Visual Basic 6.0 응용 프로그램을 업그레이드하는 경우에는 "오류 번호" 열을 참조하십시오. 오류 번호를 Number 속성(Err 개체)과 비교할 수 있습니다. 그러나 가능하면 이러한 오류 제어 방법을 Visual Basic의 구조적 예외 처리 개요에 설명된 방식으로 바꾸는 것이 좋습니다.

설명

대화 상자에 취소 단추가 나타날 때 Esc 키를 누르면 취소를 클릭한 것과 같은 결과가 됩니다. 대화 상자에 도움말 단추가 있으면 해당 대화 상자에서 상황에 맞는 도움말을 사용할 수 있습니다. 그러나 다른 단추를 클릭하기 전에는 값이 반환되지 않습니다.

참고:

첫째 인수 이외에 추가로 다른 인수를 지정하려면 식에 MsgBox 함수를 사용해야 합니다. 위치 인수를 생략하는 경우 적절하게 쉼표로 구분해야 합니다.

참고:

MsgBox 함수를 사용하려면 SafeTopLevelWindows 수준에서 UIPermission이 있어야 합니다. 이 권한은 부분 신뢰 상태에서 해당 함수의 실행을 제한할 수 있습니다. 자세한 내용은 권한 요청UIPermission을 참조하십시오.

예제

다음 예제에서는 MsgBox 함수를 사용하여 예 및 아니요 단추가 있는 대화 상자에 중대 오류 메시지를 표시합니다. 아니요 단추가 기본 응답으로 지정됩니다. 이 과정은 MsgBox 상수 값을 하나의 숫자 식으로 결합하여 수행됩니다. 이 경우에 4(예/아니요 단추 조합), 16(중대 오류 메시지 창) 및 256(둘째 단추를 기본값으로 사용)을 더하면 총 276이 됩니다. MsgBox 함수에 의해 반환되는 값은 선택한 단추에 따라 달라집니다. 예를 들어, 예는 6을 반환하고, 아니요는 7을 반환합니다.

Dim msg As String
Dim title As String
Dim style As MsgBoxStyle
Dim response As MsgBoxResult
msg = "Do you want to continue?"   ' Define message.
style = MsgBoxStyle.DefaultButton2 Or _
   MsgBoxStyle.Critical Or MsgBoxStyle.YesNo
title = "MsgBox Demonstration"   ' Define title.
' Display message.
response = MsgBox(msg, style, title)
If response = MsgBoxResult.Yes Then   ' User chose Yes.
   ' Perform some action.
Else
   ' Perform some other action.
End If

요구 사항

네임스페이스:Microsoft.VisualBasic

**모듈:**Interaction

**어셈블리:**Visual Basic 런타임 라이브러리(Microsoft.VisualBasic.dll)

참고 항목

참조

InputBox 함수(Visual Basic)