sro*_*ero 1 python wxpython wxglade
我注意到标准对话框在Windows和Linux下以不同的顺序显示了一些CANCEL和OK按钮.在Linux下,你会得到"[CANCEL] [OK]",在Windows下,"[OK] [CANCEL]".
我对标准对话框没有问题,但是我的"自定义对话框"必须调整以匹配相同的顺序,这取决于操作系统
我的疑惑:
1.-它似乎存在一个叫做的类wx.StdDialogButtonSizer,但我不确定它应该如何使用.有人可以发布任何工作简单/工作的例子吗?
而"主要问题":
2.-我使用wxglade来"构建"对话框的代码,所以我不确定我是否可以使用StdDialogButtonSizer.有没有办法用给定的顺序定义对话框,并在运行时检查按钮是否遵循正确的顺序并"交换"这两个小部件,如果没有?
谢谢
StdDialogButtonSizer绝对是自定义对话框的方法.这是一个简单的例子:
import wx
########################################################################
class SampleDialog(wx.Dialog):
""""""
#----------------------------------------------------------------------
def __init__(self, parent):
"""Constructor"""
wx.Dialog.__init__(self, parent, title="Tutorial")
btnOk = wx.Button(self, wx.ID_OK)
btnCancel = wx.Button(self, wx.ID_CANCEL)
btnSizer = wx.StdDialogButtonSizer()
btnSizer.AddButton(btnOk)
btnSizer.AddButton(btnCancel)
btnSizer.Realize()
self.SetSizer(btnSizer)
#----------------------------------------------------------------------
if __name__ == '__main__':
app = wx.App(False)
dlg = SampleDialog(None)
dlg.ShowModal()
Run Code Online (Sandbox Code Playgroud)
另请参阅WxPython:符合Ok/Cancel按钮顺序的跨平台方式或http://wxpython-users.1045709.n5.nabble.com/wx-StdDialogButtonSizer-and-wx-ID-SAVE-td2360032.html
我不知道是否有办法在Glade中做到这一点.