wxProgressDialog
プログレスバーを使って進捗表示。
#!/usr/bin/env python # -*- coding: utf-8 -*- import wx count = 10 app = wx.PySimpleApp() progress = wx.ProgressDialog( u'progressing ...', u' '*80, maximum = count, parent = None, style = wx.PD_APP_MODAL|wx.PD_SMOOTH|wx.PD_AUTO_HIDE|wx.PD_CAN_ABORT ) progress.SetFocus() for x in xrange(count * 100): alive, skip = progress.Update(x/100, '{}/{}'.format(x/100, count)) if not alive: wx.MessageBox(u'aborted.') break wx.MilliSleep(5) progress.Update(count) progress.Destroy() if alive: wx.MessageBox(u'done.')
すんごい簡単だった。キャンセルボタンを押すと中断もできる。これは便利。