2016-07-01 11 views
1

Как локализовать открытый диалог/панель на MacOS с помощью Python, который использует API wx.DirDialog? Код:Локализация wx.DirDialog на Mac OS

dlg = wx.DirDialog(self, title, style=wx.DD_DEFAULT_STYLE) 
dlg.ShowModal() 

Я прошел через "http://wxwidgets.info/localization_video/comment-page-1/#comment-403", который имеет следующие шаги по локализации:

  • Создать простое приложение WxWidgets
  • Извлечение строковые константы из исходного кода с PoEdit и создавать .po файл
  • Перевести строки константы с poEdit
  • Создать каталог сообщений (.MO файл) с poEdit
  • Применить перевод с wxLocale класса

Но, как я перевожу строки по умолчанию, которые не поставляются из моего кода?

Прикрепленные изображения диалогового окна открытия wx.DirDialog и диалогового окна приложения приложения TextEdit для справки. Open dialog obtained through my app Open dialog obtained through TextEdit application

+0

В какой стране вы бы хотели попасть? Если вы просто запустите «TextEdit» и нажмите «Cmd + O», будет ли этот диалог локализован? В общем случае wxWidgets (и wxPython) используют собственные средства управления платформой, поэтому, если ОС не поддерживает локализацию, у вас ее не будет с применением wx-приложения. Если вы хотите, чтобы узнать, как добавить локализацию к вам Mac. – Igor

+0

Также см. Это: https://support.apple.com/en-us/HT201841. – Igor

+0

Да, когда я нажимаю «Cmd + O» в приложении TextEdit, этот открытый диалог локализован. Кроме того, я успешно локализовал элементы контекстного меню моего приложения и другие элементы пользовательского интерфейса, такие как Window, button, tables, как и ожидалось. Но единственный диалог, который не локализован в моем приложении, - это открытый диалог, который я использую для просмотра и выбора папки с использованием библиотеки «wx.DirDialog». Как и на изображении, я могу локализовать сообщение в окне, которое мы передаем в качестве аргумента для wx.DirDialog. Есть ли что-нибудь, что я должен сделать из своего приложения, чтобы локализовать константные/стандартные строки открытого диалога? –

ответ

0

Решение: Указав языки, приложение поддерживает в info.plist сверток с «CFBundleLocalizations/Локализации» отображает все элементы в системе языка в открытых и процесс сохранения.

Ссылка ссылки: http://trac.wxwidgets.org/ticket/9659

 Смежные вопросы

  • Нет связанных вопросов^_^