| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > С/С++: Кроссплатформенное программирование, Qt/Gtk+/wxWidgets > [GTKmm] Кириллический текст на виджетах |
| Автор: Twelves 30.7.2011, 13:54 |
| Здравствуйте. Можно ли как-то разместить на виджетах текст на русском? при создании форм в Glade он хранит текст в шестнадцатеричных кодах, поэтому все хорошо отображается. а как быть при задании параметров прям в коде? заранее благодарен за ответы |
| Автор: Amp 30.7.2011, 17:14 |
| Кириллицу в коде лучше не использовать. Указывают английские имена, которые потом с помощью механизма локализации (своего или встроенного в библиотеку) переводятся и выводятся на нужном языке. Это является верным решением. |
| Автор: Twelves 1.8.2011, 09:21 |
| хмм. просто у меня необходимость выводить в TextView текст, который формируется во время выполнения. |
| Автор: Greeneyed 1.8.2011, 10:18 |
| Используй функцию tr(). Например, textView.setText(tr("Текст")) |
| Автор: borisbn 1.8.2011, 15:33 |
| Greeneyed, в GTKmm (который ТС указал в заголовке) ф-ция i18n также называется, как и в Qt ? tr ? |
| Автор: Greeneyed 1.8.2011, 16:18 |
| Извини. Не обратил внимания на GTKmm. Тогда я помочь не могу. |
| Автор: Amp 1.8.2011, 18:47 |
| Там у них строки через gettext пропускаются с помощью макроса _. Это что касается локализации. Для самих же строк там свой велосипед - Glib::ustring. |
| Автор: Twelves 7.8.2011, 12:00 |
| Amp, спасибо. буду читать о локализации вот правда что-то слишком много мороки получится для очень маленького проекта. может все-таки есть какой-нибудь более простой способ? если что, я работаю под Windows |
| Автор: franzR 12.8.2011, 18:51 | ||
Юзай такую штуку, если еще актуально:
мне многу раз помогала. |
| Автор: borisbn 12.8.2011, 20:29 | ||
franzR,
|
| Автор: Twelves 26.8.2011, 19:46 | ||
| Нашел решение проблемы. Не знаю, почему про него нет упоминания нигде - ни на одном форуме, ни в одном мане. нашел в дебрях оф документации. Cообщаю для тех, кому возможно будет нужно и он будет гуглить: функция Glib::ustring Glib::locale_to_utf8(string &s); Пример:
|