Qt:字体无法呈现带重音和东亚语言的字符

时间:2012-01-23 20:20:10

标签: qt

我将langauges的名称添加到listview中。

ui->CurrentLanguageList->addItem("English");
ui->CurrentLanguageList->addItem("Deutsch");
ui->CurrentLanguageList->addItem("Español");
ui->CurrentLanguageList->addItem("Français");
ui->CurrentLanguageList->addItem("Italiano");
ui->CurrentLanguageList->addItem("日本語");
ui->CurrentLanguageList->addItem("한국어");
然而,我在运行时对任何具有特殊字符(所有亚洲人,西班牙语的N,法兰西斯语等等)的任何东西都会变得胡言乱语,当涉及这些角色时,屏幕渲染需要5秒钟。

我的listview字体是Lucida Grande,12。我应该使用不同的字体吗?是不是QT应该为我处理这个?

我使用的是Mac OS X

2 个答案:

答案 0 :(得分:1)

使用QString :: fromUtf8做了诀窍......

ui->CurrentLanguageList->addItem(QString::fromUtf8("한국어"));

答案 1 :(得分:0)

我建议你看一下QTextCodec :: setCodecForCStrings:http://developer.qt.nokia.com/doc/qt-4.8/qtextcodec.html#setCodecForCStrings