Hallo liebe Community,
gibt es eine Möglichkeit den Buttontext von einem DirPickerCtrl zu ändern. Von "Browse" auf entweder Durchsuchen oder auf ein Ordner Bildchen(bmp oder so).
Mit freundlichen Grüßen
Schaf220
[geschlossen]DirPickerCtrl Buttonname ändern?
@Schaf220: Nicht das ich wüsste, aber wenn es Deutsch sein sollte, würde ich versuchen die Sprache auf Deutsch umzustellen. Oder hast Du das schon getan?
@Schaf220: Schau Dir mal `wx.Locale` und da `Init()` und `GetSystemLanguage()` an. Das betrifft ja zum Beispiel auch Standardschaltflächen wie 'Yes', 'No', und 'Cancel', wo man bei einem deutschen System auch gerne 'Ja', 'Nein' und 'Abbruch' lesen würde.
- Schaf220
- User
- Beiträge: 113
- Registriert: Montag 11. August 2008, 16:00
- Wohnort: Bremen
- Kontaktdaten:
@BlackJack: Also wenn ich die Zeilen ausführe:
bekomme ich German als Antwort.
Code: Alles auswählen
from wx import Locale
test = Locale()
print test.GetLanguageName(test.GetSystemLanguage())
@Schaf220: Dazu hättest Du nicht einmal ein Exemplar von `Locale` erstellen müssen, das sind in C++ statische Methoden.
Nein. Soweit ich weiß bzw. selbst rumprobiert habe, ist das nicht änderbar. Vielleicht liegts auch einfach daran, dass in keiner der von wxpython mitgelieferten gettext Dateien "Browse" übersetzt wird. :KSchaf220 hat geschrieben:gibt es eine Möglichkeit den Buttontext von einem DirPickerCtrl zu ändern.
Doch, das muss er tun, damit es funktioniert: http://groups.google.com/group/wxpython ... c9fbed53ecBlackJack hat geschrieben:Dazu hättest Du nicht einmal ein Exemplar von `Locale` erstellen müssen
Aber die Referenz von "Locale" sollte in einer Liste gespeichert und die Referenz der Liste dann an die App-Instanz gebunden werden. (Warum gerade der Umweg über die Liste notwendig ist, weiß ich nicht mehr genau. Vielleicht hat es damit zu tun, dass man dadurch die Sprache wechseln kann ohne das Programm neu starten zu müssen.)
@Gremlin: Der Link auf die Google-Gruppe funktioniert wenn sich da anmeldet.
Um statische Methoden auf `wx.Locale` aufzurufen muss man *kein* Exemplar davon erstellen. Das haben statische Methoden so an sich.
Um statische Methoden auf `wx.Locale` aufzurufen muss man *kein* Exemplar davon erstellen. Das haben statische Methoden so an sich.
Code: Alles auswählen
In [148]: wx.Locale.GetLanguageName(58)
Out[148]: u'English (U.S.)'
@Gremlin: Ich bekomme eine Seite wo ich aufgefordert werde einen Google-Account anzulegen wenn ich auf Deinen Link klicke.
Also gut, dann hier die zentrale Aussage:
Robin Dunn hat geschrieben: > loc = wx.Locale(wx.LANGUAGE_ENGLISH_US)
You need to save a reference to the locale, otherwise it is reset to the
previous locale when this variable is deleted.
--
Robin Dunn
Software Craftsman
http://wxPython.org