QT-4.3.1: Umlaute werden falsch dargestellt.

Alles rund um die Programmierung mit Qt
Antworten
nando
Beiträge: 321
Registriert: 28. Oktober 2004 13:16

QT-4.3.1: Umlaute werden falsch dargestellt.

Beitrag von nando »

Hi,
weiss jemand woran es liegt, wenn an stelle der deutschen umlaute immer nur eine schwarze raute kommt mit weissem Fragezeichen ???
im browser etc. wird alles richtig dargestellt...

gruss,
nando
macman
Beiträge: 1738
Registriert: 15. Juni 2005 13:33
Wohnort: Gütersloh
Kontaktdaten:

Beitrag von macman »

An einer falschen Codierung.
Die deutsche Schriftsprache ist case-sensitive. Außerdem gibt es eine Interpunktionsnorm. Wenn manch einer seine Programme genauso schlampig schreibt, wie sein Posting hier, dann sollte er es lieber bleiben lassen.
nando
Beiträge: 321
Registriert: 28. Oktober 2004 13:16

Beitrag von nando »

und wie kann ich das problem loesen ???
macman
Beiträge: 1738
Registriert: 15. Juni 2005 13:33
Wohnort: Gütersloh
Kontaktdaten:

Beitrag von macman »

In dem Du richtig codierst. Sag mal, wie soll man dir helfen? Mein Programm funktioniert nicht, was kann ich tun? So aussagekräftig war dein Ursprungsposting. Lass mal ein bißchen was sehen, sonst kommt nichts mehr.
Die deutsche Schriftsprache ist case-sensitive. Außerdem gibt es eine Interpunktionsnorm. Wenn manch einer seine Programme genauso schlampig schreibt, wie sein Posting hier, dann sollte er es lieber bleiben lassen.
nando
Beiträge: 321
Registriert: 28. Oktober 2004 13:16

Beitrag von nando »

oh man immer diese klugscheisserei hier... das nervt...
mein posting war aussagekraeftig.
ich brauche keine example code zu posten.....


trotzdem mache ich es:
es werden einfach die umlaute falsch dargestellt!

an stelle von 'ä' kommt immer eine schwarze raute mit weissem fragezeichen....

damit nicht wieder gemekert wird:

Code: Alles auswählen

pLabel->setText(tr("ändern"));
oder aber auch

Code: Alles auswählen

pLabel->setText("ändern");
upsala
Beiträge: 3946
Registriert: 5. Februar 2006 20:52
Wohnort: Landshut
Kontaktdaten:

Beitrag von upsala »

Und mit welcher Zeichensatzkodierung ist dein Quelltext abgelegt? Dann kannst du dir noch den Konstruktor von QString ansehen um zu erfahren in welcher Zeichensatzkodierung Qt deinen String erwartet...

Und wenn du keine Hilfe willst, dann poste nicht hier oder schenk uns deine Glaskugel...
Nahasapeemapetilon20
Beiträge: 20
Registriert: 13. August 2007 18:42

Beitrag von Nahasapeemapetilon20 »

Code: Alles auswählen

pLabel->setText(QString::fromUtf8("ändern"));
ich habs immer so gemacht
lg
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag von Christian81 »

Nahasapeemapetilon20 hat geschrieben:

Code: Alles auswählen

pLabel->setText(QString::fromUtf8("ändern"));
ich habs immer so gemacht
Und selbst das geht nur wenn
a) Dein Quellcode als utf-8 vorliegt
b) dein Compiler das auch korrekt versteht.

Besser ist es gar keine Umlaute zu verwenden und es nur über die Übersetzungen zu regeln.
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
Nahasapeemapetilon20
Beiträge: 20
Registriert: 13. August 2007 18:42

Beitrag von Nahasapeemapetilon20 »

diese Informationen bekommt man ja leider nicht aus seiner Frage
Leffotrak
Beiträge: 26
Registriert: 12. Mai 2007 10:44

Beitrag von Leffotrak »

Ich hatte dasselbe Problem, unter Linux waren alle Umlaute kaputt - die Programme selber habe ich unter Windows geschrieben gehabt.
Bei mir hat geholfen den Quelltext mit einem Texteditor zu laden und mit der Zeichencodierung "Westlich (ISO 8859-15) zu speichern, danach wurden auch in den kompilierten Programmen die Umlaute wieder richtig angezeigt. Eventuell hilft das jemanden mal weiter :wink:
ObeliX
Beiträge: 59
Registriert: 14. November 2007 17:47

Beitrag von ObeliX »

@nando
als erstes möchte ich dir wiedersprechen und macman recht geben. dein posting war nicht aussagekräftig. wenn man's als start-posting noch für OK halten kann ... denjenigen der helfen will und nach näheren information fragt als klugscheißer zu beschimpfen, is es dann aber definitiv nicht mehr.


trotzdem auch noch von mir nen möglicher tip zum thema :
versuchs mal mit folgendem compilerflag "-fexec-charset=ISO_8859-1"


MfG Obel
Antworten