Blad w kompilacji:
'setCodecForTr' is not a member of 'QTextCodec'.
w linii:
QTextCodec::setCodecForTr(QTextCodec::codecForName ("UTF-8"));
Powiedz jaki system i jaki kompilator. I co chcesz osiągnąć...
w Qt5 nie ma setCodecForTr.
To lepiej a zarazem gorzej, bo ustanawiając UTF-8 jedynie słusznym kodekiem zapomnieli, że pod Windows natywnym kodowaniem jest UTF-16 a nie UTF-8.
A żeby było jeszcze śmieszniej, Visual C++ traktuje literały bez L
jako będące w bieżącej stronie kodowej (CP1250 w PL).
Jest takie makro QStringLiteral
ale jest zepsute (nieprawidłowo zaimplementowane pod Windowsem).
Kiedyś po kilku godzinach kombinowania wymyśliłem takie coś:
QString s = QString::fromWCharArray(L"zażółć gęślą jaźń");
ui->pushButton->setText(s);
Działa dobrze pod Qt 5.1.1, QtCreator 2.8.1, kompilator MSVC++ 16.0 z pakietu Windows SDK 7.1
Zarejestruj się i dołącz do największej społeczności programistów w Polsce.
Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.