crossplatform.ru

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

2 страниц V   1 2 >  
Ответить в данную темуНачать новую тему
> QT и кириллица
vizir1989
  опции профиля:
сообщение 16.12.2012, 17:08
Сообщение #1


Студент
*

Группа: Новичок
Сообщений: 12
Регистрация: 14.5.2012
Пользователь №: 3377

Спасибо сказали: 0 раз(а)




Репутация:   0  


Доброго времени суток!
Исходные данные:
Qt Creator 2.4.1
Qt 4.8.4
исходники в UTF-8
в main.cpp написано:
    QTextCodec *cyrillicCodec = QTextCodec::codecForName("UTF-8");
    QTextCodec::setCodecForTr(cyrillicCodec);
    QTextCodec::setCodecForLocale(cyrillicCodec);
    QTextCodec::setCodecForCStrings(cyrillicCodec);


Итог:
Кириллица не отображается. Вообще, нет ни крякозябр, ни чего.
Ни в комбобоксе, ни на кнопке, ни в QFileDialog::getOpenFileName.

P.S. Система Linux Mint 13 с кедами.
uname -a
Раскрывающийся текст

Linux vizir-PC 3.2.0-23-generic #36-Ubuntu SMP Tue Apr 10 20:39:51 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux


еще инфа, может поможет.
1. qDebug нормально выводит русский язык.
2. Мне ни как не удается поменять шрифт через
QApplacation::setFont(...);
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
RazrFalcon
  опции профиля:
сообщение 16.12.2012, 17:46
Сообщение #2


Zombie Mod
*****

Группа: Участник
Сообщений: 1654
Регистрация: 24.5.2010
Из: Харьков
Пользователь №: 1752

Спасибо сказали: 64 раз(а)




Репутация:   212  


меня
QTextCodec::setCodecForCStrings(QTextCodec::codecForName("UTF-8"));
QTextCodec::setCodecForLocale(QTextCodec::codecForName("UTF-8"));
QTextCodec::setCodecForTr(QTextCodec::codecForName("UTF-8"));
еще ни разу не подводил, в main.

2) qApp()->setFont()
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
vizir1989
  опции профиля:
сообщение 16.12.2012, 17:57
Сообщение #3


Студент
*

Группа: Новичок
Сообщений: 12
Регистрация: 14.5.2012
Пользователь №: 3377

Спасибо сказали: 0 раз(а)




Репутация:   0  


Цитата(RazrFalcon @ 16.12.2012, 18:46) *
меня
QTextCodec::setCodecForCStrings(QTextCodec::codecForName("UTF-8"));
QTextCodec::setCodecForLocale(QTextCodec::codecForName("UTF-8"));
QTextCodec::setCodecForTr(QTextCodec::codecForName("UTF-8"));
еще ни разу не подводил, в main.

2) qApp()->setFont()


qApp тоже не работает.
Точнее не удается сменить Hevaltic на Tahomy например. Сделать жирным/курсивом или уменьшить шрифт получается.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
RazrFalcon
  опции профиля:
сообщение 16.12.2012, 21:59
Сообщение #4


Zombie Mod
*****

Группа: Участник
Сообщений: 1654
Регистрация: 24.5.2010
Из: Харьков
Пользователь №: 1752

Спасибо сказали: 64 раз(а)




Репутация:   212  


приведите код
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
ssoft
  опции профиля:
сообщение 17.12.2012, 8:03
Сообщение #5


Участник
**

Группа: Участник
Сообщений: 130
Регистрация: 17.2.2010
Из: Москва
Пользователь №: 1470

Спасибо сказали: 30 раз(а)




Репутация:   3  


1. Может стоит сохранить исходники в кодировке utf-8 тоже. Для контроля ;)
2. Еще как вариант, похожая проблема у меня возникала из-за оконного менеджера.

Сообщение отредактировал ssoft - 17.12.2012, 8:08
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
vizir1989
  опции профиля:
сообщение 17.12.2012, 9:53
Сообщение #6


Студент
*

Группа: Новичок
Сообщений: 12
Регистрация: 14.5.2012
Пользователь №: 3377

Спасибо сказали: 0 раз(а)




Репутация:   0  


Цитата(ssoft @ 17.12.2012, 9:03) *
1. Может стоит сохранить исходники в кодировке utf-8 тоже. Для контроля ;)
2. Еще как вариант, похожая проблема у меня возникала из-за оконного менеджера.

1. Исходники в UTF-8
2. Надо глянуть что с оконным менеджером.

Цитата(RazrFalcon @ 16.12.2012, 22:59) *
приведите код


Весь код проекта или весь код main?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
RazrFalcon
  опции профиля:
сообщение 17.12.2012, 12:51
Сообщение #7


Zombie Mod
*****

Группа: Участник
Сообщений: 1654
Регистрация: 24.5.2010
Из: Харьков
Пользователь №: 1752

Спасибо сказали: 64 раз(а)




Репутация:   212  


Нет, задания шрифта.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
vizir1989
  опции профиля:
сообщение 17.12.2012, 13:30
Сообщение #8


Студент
*

Группа: Новичок
Сообщений: 12
Регистрация: 14.5.2012
Пользователь №: 3377

Спасибо сказали: 0 раз(а)




Репутация:   0  


Цитата(RazrFalcon @ 17.12.2012, 13:51) *
Нет, задания шрифта.


QApplication::setFont("Tahoma", 8, QFont::Bold, true);

Это я писал в качестве эксперимента.
Пробовал сделать так
qApp->setFont(...);
Все равно не меняется семейство шрифтов.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
RazrFalcon
  опции профиля:
сообщение 17.12.2012, 16:59
Сообщение #9


Zombie Mod
*****

Группа: Участник
Сообщений: 1654
Регистрация: 24.5.2010
Из: Харьков
Пользователь №: 1752

Спасибо сказали: 64 раз(а)




Репутация:   212  


странно

QApplication::setFont(QFont("Tahoma", 8, QFont::Bold, true));

в кедах работает
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 19.12.2012, 18:45
Сообщение #10


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9669
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

Спасибо сказали: 807 раз(а)




Репутация:   94  


Цитата(vizir1989 @ 16.12.2012, 19:08) *
Кириллица не отображается. Вообще, нет ни крякозябр, ни чего.
где не отображается?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

2 страниц V   1 2 >
Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 25.4.2024, 23:11