crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )


  Ответ в Строка в DLL
Введите ваше имя
Подтвердите код

Введите в поле код из 6 символов, отображенных в виде изображения. Если вы не можете прочитать код с изображения, нажмите на изображение для генерации нового кода.
Теги
Выровнять по центру
Ссылка на тему
Ссылка на сообщение
Скрытый текст
Сокращение
Код с подсветкой
Offtopic
 
Удалить форматирование
Спец. элементы
Шрифт
Размер
 
Цвет шрифта
 
Отменить ввод
Вернуть ввод
Полужирный
Курсив
Подчеркнутый
 
 
Смайлики
Вставить изображение
Вставить адрес электронной почты
Цитата
Код
Раскрывающийся текст
 
Увеличить отступ
По левому краю
По центру
По правому краю
Вставить список
Вставить список

Опции сообщения
 Включить смайлы?
Иконки сообщения
(Опционально)
                                
                                
  [ Без иконки ]
 


Последние 10 сообщений [ в обратном порядке ]
kalifriki Дата 7.2.2010, 1:33
 
Цитата(Litkevich Yuriy @ 7.2.2010, 0:14) *
Цитата(kalifriki @ 7.2.2010, 2:55) *
Слышал, погуглил, не понял как это может мне помочь.
самый простой способ, но и самый плохой:
где-то в коде строка с не латиницей:
QString s = tr("Привет мир");
, предположим, что кодировка этого файла - CP-1251 (Windows-1251)
тогда в функции main:
QTextCodec::setCodecForTr(QTextCodec::codecForName("Windows-1251"));


Большое спасибо. С проблемой разобрался :)
Litkevich Yuriy Дата 7.2.2010, 0:14
 
Цитата(kalifriki @ 7.2.2010, 2:55) *
Слышал, погуглил, не понял как это может мне помочь.
самый простой способ, но и самый плохой:
где-то в коде строка с не латиницей:
QString s = tr("Привет мир");
, предположим, что кодировка этого файла - CP-1251 (Windows-1251)
тогда в функции main:
QTextCodec::setCodecForTr(QTextCodec::codecForName("Windows-1251"));
Rocky Дата 6.2.2010, 23:58
 
QTextCodec::setCodecForTr(QTextCodec::codecForName("Windows-1251"));
QTextCodec::setCodecForLocale(QTextCodec::codecForName("Windows-1251"));
QTextCodec::setCodecForCStrings(QTextCodec::codecForName("Windows-1251"));


как пример
kalifriki Дата 6.2.2010, 23:55
 
Цитата(Litkevich Yuriy @ 6.2.2010, 23:46) *
kalifriki, что-нибудь слышал про функции:
tr()
trUtf8()
codecFoTr()
?

Слышал, погуглил, не понял как это может мне помочь.
CODE

lib.setFileName(fileName);
lib.load();
typedef QString (*Name) ();
if (name) {
QString temp = name();
setWindowTitle(temp);
}

В заголовке получаю кракозябры.
Litkevich Yuriy Дата 6.2.2010, 23:46
  kalifriki, что-нибудь слышал про функции:
tr()
trUtf8()
codecFoTr()
?
kalifriki Дата 6.2.2010, 23:22
 
Цитата(Litkevich Yuriy @ 6.2.2010, 23:15) *
Цитата(kalifriki @ 7.2.2010, 1:42) *
но если в строке есть русские символы - начинаются проблемы, при вызове этой функции получаю кракозябры. Как это можно исправить? И получать из библиотеки нормальные русские символы?
а как это (наличие строки не в Lain1) реализовать без библиотеки, а в своей программе знаешь?

Не совсем понял :)
У меня строка должна быть обязательно в библиотеке (там помимо нее, конечно есть и функции, но сейчас дело их не касается). Как её получить в основной программе и вывести, например, на экран в нормальном виде, не кракозябрском.
Litkevich Yuriy Дата 6.2.2010, 23:15
 
Цитата(kalifriki @ 7.2.2010, 1:42) *
но если в строке есть русские символы - начинаются проблемы, при вызове этой функции получаю кракозябры. Как это можно исправить? И получать из библиотеки нормальные русские символы?
а как это (наличие строки не в Lain1) реализовать без библиотеки, а в своей программе знаешь?
kalifriki Дата 6.2.2010, 22:42
  Доброго времени суток. Проблема такая:
Я создал динамическую библиотеку, с единственной функцией, которая возвращает QString.
В своей программе подключаю эту библиотеку и вызываю этот метод. Если строка в библиотека набрана английскими символами все нормально, но если в строке есть русские символы - начинаются проблемы, при вызове этой функции получаю кракозябры. Как это можно исправить? И получать из библиотеки нормальные русские символы?
Заранее спасибо.
Просмотр темы полностью (откроется в новом окне)
RSS Рейтинг@Mail.ru Текстовая версия Сейчас: 10.7.2025, 4:25