Seite 1 von 1

In String eingeschlossene Escape-Sequenz wird ignoriert

Verfasst: Mittwoch 21. Mai 2008, 22:18
von snakeseven
Hallo,
ich lese den Namen für ein Menü-Item aus einer Textdatei.

Code: Alles auswählen

100%\t7
Die darin enthaltene Escape-Sequenz '\t' wird aber nicht als solche interpretiert, so dass im Menü nacher

Code: Alles auswählen

100%\t7
statt

Code: Alles auswählen

100%     7 
steht.

Wie kann ich es anstellen, dass die Escape-Sequenz auch als solche interpretiert wird?

Es grüßt,
Seven

Verfasst: Mittwoch 21. Mai 2008, 22:25
von Trundle
Entweder ``menu_string.replace('\\t', '\t')`` oder ``menu_string.decode('string-escape')`` oder in der Menü-Datei schon das Tabulator-Zeichen benutzen.

Verfasst: Donnerstag 22. Mai 2008, 07:54
von snakeseven
Trundle hat geschrieben:Entweder ``menu_string.replace('\\t', '\t')`` oder ``menu_string.decode('string-escape')`` oder in der Menü-Datei schon das Tabulator-Zeichen benutzen.
Zweite Variante führte bei mir zum gewünschten Ergebnis.

Thanx!
Seven

Verfasst: Donnerstag 22. Mai 2008, 09:32
von snakeseven
Hi,
doch noch ein Problem.
Es funktioniert nicht mit Unicode (decode(unicode-escape)). Für die deutsche Version müssen die Menünamen wegen der Umlaute aber zu Unicode gewandelt werden.

Gruß, Seven

Verfasst: Donnerstag 22. Mai 2008, 18:25
von snakeseven
Habs jetzt erstmal für jeden relevanten Menüeintrag so gemacht:

Code: Alles auswählen

self.menuitem = wx.MenuItem (self.mainmenu, ID, unicode(itemnames[index].decode('string-escape'), 'utf-8'))
Grüße, Seven