반응형
YesNoCancel이 있는 MessageBox - No & Cancel이 동일한 이벤트를 트리거함
나는 메시지 박스를 가지고 있습니다.YesNoCancel
단추...
- 누르기
Yes
일부 작업을 수행하고 응용 프로그램을 닫습니다. - 정상적으로 작동합니다. - 누르기
No
아무것도 하지 않고 응용프로그램을 닫습니다. (아래 참조) - 누르기
Cancel
에서는 아무 작업도 수행하지 않고 응용프로그램을 열어 둡니다(아래 참조).
사용 중DialogResult.No
단추와DialogResult.Cancel
단추를 끼웁니다.하지만 둘 중 하나를 누르면 작동이 시작됩니다.DialogResult.Cancel
이벤트. 뭐가 문제야?
이것은 잘 작동할 것입니다.
Dim result As DialogResult = MessageBox.Show("message", "caption", MessageBoxButtons.YesNoCancel)
If result = DialogResult.Cancel Then
MessageBox.Show("Cancel pressed")
ElseIf result = DialogResult.No Then
MessageBox.Show("No pressed")
ElseIf result = DialogResult.Yes Then
MessageBox.Show("Yes pressed")
End If
저는 모든 답이 맞는 것 같습니다.저는 그저 조금 다른 코드를 쓰고 싶습니다.제 생각에, 당신은 대화상자의 결과를 저장하기 위해 추가 변수를 사용하지 않고 그것을 할 수 있습니다.확인:
VB 코드
Select Case MsgBox("Your Message", MsgBoxStyle.YesNoCancel, "caption")
Case MsgBoxResult.Yes
MessageBox.Show("Yes button")
Case MsgBoxResult.Cancel
MessageBox.Show("Cancel button")
Case MsgBoxResult.No
MessageBox.Show("NO button")
End Select
C# 코드
switch (MessageBox.Show("Message", "caption", MessageBoxButtons.YesNoCancel))
{
case DialogResult.Yes: MessageBox.Show("Yes"); break;
case DialogResult.No: MessageBox.Show("No"); break;
case DialogResult.Cancel: MessageBox.Show("Cancel"); break;
}
Darin의 예에 조금 더 추가하기 위해 아래에는 상자가 있는 아이콘이 표시됩니다.http://msdn.microsoft.com/en-us/library/system.windows.forms.messagebox(v=vs.110).aspx
Dim result = MessageBox.Show("Message To Display", "MessageBox Title", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question)
If result = DialogResult.Cancel Then
MessageBox.Show("Cancel Button Pressed", "MessageBox Title",MessageBoxButtons.OK , MessageBoxIcon.Exclamation)
ElseIf result = DialogResult.No Then
MessageBox.Show("No Button Pressed", "MessageBox Title", MessageBoxButtons.OK, MessageBoxIcon.Error)
ElseIf result = DialogResult.Yes Then
MessageBox.Show("Yes Button Pressed", "MessageBox Title", MessageBoxButtons.OK, MessageBoxIcon.Information)
End If
dim result as dialogresult
result = MessageBox.Show("message", "caption", MessageBoxButtons.YesNoCancel)
If result = DialogResult.Cancel Then
MessageBox.Show("Cancel pressed")
ElseIf result = DialogResult.No Then
MessageBox.Show("No pressed")
ElseIf result = DialogResult.Yes Then
MessageBox.Show("Yes pressed")
End If
사용:
Dim n As String = MsgBox("Do you really want to exit?", MsgBoxStyle.YesNo, "Confirmation Dialog Box")
If n = vbYes Then
MsgBox("Current Form is closed....")
Me.Close() 'Current Form Closed
Yogi_Cottex.Show() 'Form Name.show()
End If
이것이 당신이 그것을 하지 않고 할 수 있는 방법입니다.Dim
,사용.MessageBox.Show
대신에MsgBox
이것이 내 생각에 그것을 쓰는 가장 깨끗한 방법입니다!
Select Case MessageBox.Show("Message", "Title", MessageBoxButtons.YesNo)
Case vbYes
' Other Code goes here
Case vbNo
' Other Code goes here
End Select
를 사용하면 더 단축할 수 있습니다.If
:
If MessageBox.Show("Message", "Title", MessageBoxButtons.YesNo) = vbYes Then
' Other Code goes here
End If
확인 알림을 닫는 중:
Private Sub cmd_exit_click()
' By clicking on the button the MsgBox will appear
If MsgBox("Are you sure want to exit now?", MsgBoxStyle.YesNo, "closing warning") = MsgBoxResult.Yes Then ' If you select yes in the MsgBox then it will close the window
Me.Close() ' Close the window
Else
' Will not close the application
End If
End Sub
예/아니오 프롬프트를 사용하는 방법은 다음과 같습니다.
If MsgBox("Are you sure?", MsgBoxStyle.YesNo) <> MsgBoxResults.Yes Then
Exit Sub
End If
올랜도와 피터의 답변을 업데이트합니다.
Select Case MsgBox("Your Message", VbMsgBoxStyle.vbYesNoCancel, "caption")
Case VbMsgBoxResult.vbYes
MsgBox "Yes button"
Case VbMsgBoxResult.vbCancel
MsgBox "Cancel button"
Case VbMsgBoxResult.vbNo
MsgBox "No button"
End Select
사용해 보세요.
MsgBox("Are you sure want to Exit", MsgBoxStyle.YesNo, "")
If True Then
End
End If
언급URL : https://stackoverflow.com/questions/2256909/messagebox-with-yesnocancel-no-cancel-triggers-same-event
반응형
'programing' 카테고리의 다른 글
레일:포함 대 :조인트 (0) | 2023.06.02 |
---|---|
파일 및 폴더를 포함하여 커밋되지 않은 변경 사항을 되돌리는 방법은 무엇입니까? (0) | 2023.06.02 |
Response.redirect에서 "스레드가 중단되었습니다."를 발생시킵니다. (0) | 2023.06.02 |
3876877096_Portrait_iPhone-Simple-Pad_Default를 사용하여 키보드 iPhone-Portrait-NumberPad에 대한 유형 4를 지원하는 키 평면을 찾을 수 없습니다. (0) | 2023.06.02 |
Windows에서 "make"를 설치하고 사용하는 방법은 무엇입니까? (0) | 2023.06.02 |