Название: как разместить русский текст в QLabel Отправлено: Vernan от Декабрь 23, 2008, 14:16 Kак разместить русский текст в QLabel. Пробовал так:
labelText->setText(trUtf8("Привет")); отображает вместо текста квадратики. Название: Re: как разместить русский текст в QLabel Отправлено: BRE от Декабрь 23, 2008, 14:29 Kак разместить русский текст в QLabel. Пробовал так: Исходники должны быть в кодировке UTF-8, тогда это заработает.labelText->setText(trUtf8("Привет")); отображает вместо текста квадратики. Название: Re: как разместить русский текст в QLabel Отправлено: -QT- от Декабрь 23, 2008, 14:59 labelText->setText(QString::fromLocal8Bit(tr("Привет")));
или labelText->setText(QString::fromLocal8Bit("Привет")); Название: Re: как разместить русский текст в QLabel Отправлено: Vernan от Декабрь 23, 2008, 15:29 labelText->setText(QString::fromLocal8Bit(tr("Привет"))); выдаёт такую ошибкуили labelText->setText(QString::fromLocal8Bit("Привет")); error C2001: newline in constant Название: Re: как разместить русский текст в QLabel Отправлено: igor_bogomolov от Декабрь 23, 2008, 15:44 Попробуй так:
Код: #include <QtCore/QTextCodec> Код: labelText->setText(tr("Привет")); Название: Re: как разместить русский текст в QLabel Отправлено: alkmas от Декабрь 23, 2008, 15:52 QString str = QString::fromLocal8Bit("Привет");
labelText->setText(str); // void setText ( const QString & ) // передача параметра в setText идет по ссылке, а не по значению Можно еще так: labelText->setText((new QString)->fromLocal8Bit("Привет")); Название: Re: как разместить русский текст в QLabel Отправлено: alkmas от Декабрь 23, 2008, 16:00 Попробуй так: Код: #include <QtCore/QTextCodec> Код: labelText->setText(tr("Привет")); Да так намного лучше ! Название: Re: как разместить русский текст в QLabel Отправлено: -QT- от Декабрь 23, 2008, 12:30 labelText->setText(QString::fromLocal8Bit(tr("Привет"))); выдаёт такую ошибкуили labelText->setText(QString::fromLocal8Bit("Привет")); error C2001: newline in constant label->setText(QString::fromLocal8Bit("Привет")); реально работает в моих программах. Может Я не то курю ? Название: Re: как разместить русский текст в QLabel Отправлено: Vernan от Декабрь 23, 2008, 12:35 Попробуй так: Код: #include <QtCore/QTextCodec> Код: labelText->setText(tr("Привет")); Работает. Спасибо за помощь! Название: Re: как разместить русский текст в QLabel Отправлено: igor_bogomolov от Декабрь 23, 2008, 12:45 Можно и как -=QT=- написал
Цитировать label->setText(QString::fromLocal8Bit("Привет")); Название: Re: как разместить русский текст в QLabel Отправлено: Alex03 от Декабрь 24, 2008, 07:32 Можно еще так: labelText->setText((new QString)->fromLocal8Bit("Привет")); Не хватает утечек памяти? Откуда, блин, вы берётесь? Почему вместо того чтобы один раз почитать документацию и разобраться в кодировках большинство начинает экспериментировать, пробуют сотни вариантов и т.д., решают проблему кривешим способом, при этом так и не понимая её сути? PS. Sorry, никого не хотел обидеть. Название: Re: как разместить русский текст в QLabel Отправлено: -QT- от Декабрь 24, 2008, 08:35 Можно еще так: labelText->setText((new QString)->fromLocal8Bit("Привет")); Не хватает утечек памяти? Откуда, блин, вы берётесь? Почему вместо того чтобы один раз почитать документацию и разобраться в кодировках большинство начинает экспериментировать, пробуют сотни вариантов и т.д., решают проблему кривешим способом, при этом так и не понимая её сути? PS. Sorry, никого не хотел обидеть. Но отвечал на конкретно поставленный вопрос : "как разместить русский текст в QLabel ?", а не на вопрос: "Как правильно использовать локализацию в программном продукте ?" 1. Чтение документации это для одних - способ получить информацию, для других - непосильная обязанность. 2. Полностью согласен. Если не использовать при создании объекта коммандой new указатель на родительский объект (применимо для наследуемых от QObject) то требуется после использования принудительно удалять его (созданный объект) коммандой delete. 3. А по вопросу эксперементирования IMHO так-же и анальный секс придумали, кто-то пользуется ;D а кто-то и нет ;) Название: Re: как разместить русский текст в QLabel Отправлено: alkmas от Декабрь 24, 2008, 09:30 Можно еще так: labelText->setText((new QString)->fromLocal8Bit("Привет")); Не хватает утечек памяти? Откуда, блин, вы берётесь? Почему вместо того чтобы один раз почитать документацию и разобраться в кодировках большинство начинает экспериментировать, пробуют сотни вариантов и т.д., решают проблему кривешим способом, при этом так и не понимая её сути? PS. Sorry, никого не хотел обидеть. Есть 2 пути: 1. от теории к практике 2. и наоборот Кому как удобно. Второй похоже как вы сказали для большинства более естественен. Стоит задуматься! А мой второй вариант я признаю ошибочным ! |