2013-09-24 11 views
3

간단한 wx.MessageBox 반환 값 예제를 찾고 있습니다. 나는 몇 가지 기본적인 예를 보았고 이것들은 이처럼 많이 보입니다. 지금까지 나는 다음과 같은 것을 가지고있다 :wxMessageBox는 파이썬에서 무엇을 반환합니까?

dlg = wx.MessageBox('What do you choose?, 'Test Dialog', wx.YES_NO | wx.NO_DEFAULT | wx.ICON_QUESTION) 
if dlg == wx.ID_YES: 
    print 'You picked yes' 

dlg는 8 번을 No, 2 번은 yes로 반환하는 것으로 보인다. 그러나 wx.ID_YES = 2503 및 wx.ID_NO = 5104

감사합니다.

+1

내 대답이 문제를 해결하면 [답변을 수락하십시오] (http://meta.stackoverflow.com/a/5235)를 참조하십시오. – falsetru

답변

5

wx.MessageBoxwx.YES, wx.NO, wx.OK, wx.CANCEL 중 하나를 반환합니다. wx.NO 대신 wx.ID_NO

사용 wx.YES 대신 wx.ID_YES : 참조

>>> import wx 
>>> wx.YES 
2 
>>> wx.NO 
8 

::wxMessageBox

0

당신이 시도 할 수 있습니다 :

yesNobox = wx.MessageDialog(None,"What do you choose?",'Question',wx.YES_NO) 
yesNoAnswer = yesNobox.ShowModal() 

그래서 당신에 yesNoAnswer에 답을 해당 예 또는 아니오를 사용할 수 있는지 확인하십시오.

yesNoAnswer == wx.ID_YES: 
yesNoAnswer == wx.ID_NO: 
관련 문제