免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3713 | 回复: 2
打印 上一主题 下一主题

wxPython模式对话框问题,请大侠帮忙 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-11-29 01:15 |只看该作者 |倒序浏览
我定义了一个wx.Dialog类,使用ShowModal()方法显示为模式对话框,点击OK后,对话框消失,在程序的最后面我再次调用ShowModal()方法希望再次显示模式对话框,对话框是显示了,但是这时点击OK就直接退出了。附上精简的一点程序代码,望大大们指点迷津,跪谢了!

  1. #coding=gbk
  2. import wx
  3. class COCNSDlg(wx.Dialog):
  4.     def __init__(self, parent, id = -1):
  5.         wx.Dialog.__init__(self, parent, id, u'Start Page v1.4 for 300', size = (430, 250))
  6.         ....            
  7.     def OnClickCode(self, Event):
  8.         self.optchoice = "code"
  9.         self.EndModal(wx.ID_OK)
  10.     def OnClickSendRL(self ,Event):
  11.         self.optchoice = "send"
  12.         self.EndModal(wx.ID_OK)
  13. if __name__ == "__main__":
  14.     app = wx.PySimpleApp()
  15.     app.MainLoop()
  16.     dlgOCNSStart = COCNSDlg(None)
  17.     if (wx.ID_CANCEL == dlgOCNSStart.ShowModal()):
  18.         dlgOCNSStart.Destroy()
  19.         sys.exit()
  20.     #编码模式
  21.     if (dlgOCNSStart.optchoice == "code"):
  22.         print "code mode...."
  23.         #读取配置文件
  24.         sitelistfile = dlgOCNSStart.txtctrlSiteList.GetValue()
  25.         .....
  26.     #发送模式        
  27.     else:
  28.         print 'Test mode start...'
  29.         EasyLogUtil.logMsg("Test mode start...")
  30.         .....
  31.     dlgOCNSStart.ShowModal()
复制代码

论坛徽章:
0
2 [报告]
发表于 2009-11-29 12:11 |只看该作者
你最后的ShowModal()没有相应处理当然运行完就退出了啊!

论坛徽章:
0
3 [报告]
发表于 2009-11-29 23:26 |只看该作者

回复 #2 nietsche 的帖子

从模式对话框获得参数后,继续执行程序,我希望程序执行完后再从头开始,而不想复制前面的一大段代码,请问大大有什么办法吗?因为这样可以不用每次都绘制一次窗体。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP