Порядок OK / CANCEL в «пользовательских» диалогах, созданных с помощью wxglade - PullRequest
1 голос
/ 14 июля 2011

Я заметил, что в стандартных диалогах некоторые кнопки ОТМЕНА и ОК в различном порядке под Windows и под Linux.В Linux вы получаете «[CANCEL] [OK]», а в Windows «[OK] [CANCEL]».

У меня нет проблем со стандартными диалогами, но тогда мои «пользовательские диалоги» должныбыть настроенным, чтобы соответствовать тому же порядку, в зависимости от ОС

Мои сомнения:

1.- Кажется, существует класс с именем wx.StdDialogButtonSizer, но я не уверен, как это должноиспользоваться.Может кто-нибудь опубликовать какой-нибудь рабочий простой / рабочий пример?

И «Главный вопрос»:

2.- Я использую wxglade для «сборки» кода для диалогов, так что я не уверенЯ могу использовать StdDialogButtonSizer.Есть ли способ определить диалог с заданным порядком, и во время выполнения проверить, если кнопки следуют правильному порядку, и «заменить» эти два виджета, если нет?

Спасибо

1 Ответ

5 голосов
/ 14 июля 2011

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()

См. Также WxPython: кроссплатформенный способ согласования порядка кнопок Ok / Cancel * или http://wxpython -users.1045709.n5.nabble.com / wx-StdDialogButtonSizer-and-wx- ID-SAVE-td2360032.html

Я не знаю, есть ли способ сделать это на поляне или нет.

...