这是我在首次启动GooeyPi时打开首选项窗口的方法:我的 PyInstaller GUI 前端。这可以很容易地调整为具有密码对话框或框架。我分为两个功能:检查用户是否有设置首选项,并打开首选项窗口。这允许他们稍后更改首选项。我ShowModal
用来防止用户在设置之前使用应用程序。
class GooeyPi(wx.Frame):
def __init__(self, *args, **kwargs):
super(GooeyPi, self).__init__(*args, **kwargs)
self.InitUI()
self.SetSize((460,350))
self.SetTitle('GooeyPi - PyInstaller GUI')
self.Show()
self.CheckFirstRun() # Checks for first run here.
.....
def CheckFirstRun(self):
config = controller.getConfig()
if config['pyidir'] == '':
...
self.OnPreferences(None)
....
def OnPreferences(self, e):
prefdlg = pref.Preferences(None, title='Edit Preferneces')
prefdlg.ShowModal()
prefdlg.Destroy()
并且 pref.Preferences 在单独的模块中定义:
class Preferences(wx.Dialog):
def __init__(self, *args, **kw):
super(Preferences, self).__init__(*args, **kw)
self.InitUI()
self.SetSize((380,290))
self.SetTitle("Preferences")
def InitUI(self):
you_get_the_idea...