Поиск:

Ответ в темуСоздание новой темы Создание опроса
> [Qt] Проблема с функцией QString::fromLocal8Bit() 
:(
    Опции темы
juno24
Дата 25.1.2010, 14:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 20
Регистрация: 25.11.2009

Репутация: нет
Всего: нет



 Этот код работет 

   QString   first_str ;
   first_str =   QString::fromLocal8Bit("Некоторый текст");


А вот этот нет  

   QString   first_string ;
   QString   second_string = "Некоторый текст" ;
   first_str =   QString::fromLocal8Bit(second_string);
---------------------------------------------------------------------------------------------------------------------------
ошибка: нет подходящей функции для вызова ‘QString::fromLocal8Bit(QChar*)’


В си не селен , подскажите плиз в чем косяк ?

Это сообщение отредактировал(а) juno24 - 25.1.2010, 14:36
PM MAIL   Вверх
andrew_121
Дата 25.1.2010, 14:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кодофей
****


Профиль
Группа: Завсегдатай
Сообщений: 3448
Регистрация: 3.1.2008

Репутация: 11
Всего: 33



а описание QString::fromLocal8Bit() посмотреть, принцип не позволяет?
а там ясно написано:
Цитата

QString QString::fromLocal8Bit ( const char * str, int size = -1 )   [static]
Returns a QString initialized with the first size characters of the 8-bit string str.

If size is -1 (default), it is taken to be qstrlen(str).

QTextCodec::codecForLocale() is used to perform the conversion from Unicode.

See also toLocal8Bit(), fromAscii(), fromLatin1(), and fromUtf8().


Добавлено через 1 минуту и 50 секунд
Цитата(juno24 @  25.1.2010,  14:34 Найти цитируемый пост)
В си не селен

это с++. книжки почитать пробовали? smile 

Это сообщение отредактировал(а) andrew_121 - 25.1.2010, 14:41


--------------------
Удалил аккаунт. Прощайте!
PM MAIL   Вверх
juno24
Дата 25.1.2010, 14:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 20
Регистрация: 25.11.2009

Репутация: нет
Всего: нет



     Я очень ценю время всех кто пытается ответить на вопросы участников форума. 

Но мне было бы проще увидеть правильный код  и  понять в чем ошибка.

В доки я конечно  глядел, но к сожалению не догоняю . 
Все же если кто может приведите правильный код , буду очень благодарен. 
PM MAIL   Вверх
juno24
Дата 25.1.2010, 17:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 20
Регистрация: 25.11.2009

Репутация: нет
Всего: нет



       Да,  сложно тут у вас с помощью. Гуру не могут снизойти до чайника. 

Собственно  нужно было понять как склеить строку  в русской кодировке .

Конечно проще сделать умный вид и отправить читать доки .

Вот может кому пригодится .


void MainWindow::PrinterTest()
{
 QPrinter printer;
 QPrintDialog printDialog(&printer, this);
 if (printDialog.exec()) {
 QTextDocument textDocument;
  
 QString s1 = QString::fromLocal8Bit("Привет ");
 QString s2 = QString::fromLocal8Bit("Мир!");
 QString s3 = s1 +s2 ;

 textDocument.setHtml(s3);
 textDocument.print(&printer);
 }

Сей код отправит на принтер читаемую строку .


PM MAIL   Вверх
SABROG
Дата 25.1.2010, 22:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Hacker
****


Профиль
Группа: Завсегдатай
Сообщений: 2481
Регистрация: 18.9.2006

Репутация: 81
Всего: 91



Цитата(juno24 @  25.1.2010,  17:04 Найти цитируемый пост)
QString s3 = s1 +s2 ;

Сомневаюсь конечно, что кому-то пригодится, но смысла создавать третью переменную нет:

Код

s1.append(QString::fromLocal8Bit("Мир"));



--------------------
Национальная группа Russian Federation на QtCentre.
PM MAIL   Вверх
juno24
Дата 26.1.2010, 05:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 20
Регистрация: 25.11.2009

Репутация: нет
Всего: нет



     Иногда чтобы понять как работает элементарная вещь новичку приходится тратить кучу времени. Пытаюсь переписать
прогу когда то написанную на делфи , просто кроме Hello word на Си ничего не писал.
     В инете по QT  почти все доки по старой версии . Мало примеров работает в новой версии . В официальных доках конечно все свежее но там мало примеров и они отрывками трудно понять как это использовать. Хорошо что есть www.qt-apps.org , можно скачать простенькое приложение и поковыряться в исходниках. 
PM MAIL   Вверх
SABROG
Дата 26.1.2010, 09:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Hacker
****


Профиль
Группа: Завсегдатай
Сообщений: 2481
Регистрация: 18.9.2006

Репутация: 81
Всего: 91



$QTDIR/examples

Эти же примеры полностью приведены в Assistant'e (не отрывками). Тут тоже ссылок на различные документации полно: http://www.prog.org.ru/topic_765_0.html

Плохо ищите.


--------------------
Национальная группа Russian Federation на QtCentre.
PM MAIL   Вверх
andrew_121
Дата 26.1.2010, 11:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кодофей
****


Профиль
Группа: Завсегдатай
Сообщений: 3448
Регистрация: 3.1.2008

Репутация: 11
Всего: 33



Цитата(juno24 @  25.1.2010,  17:04 Найти цитируемый пост)
Да,  сложно тут у вас с помощью. Гуру не могут снизойти до чайника. 

просто некоторые на этом форуме довольно долго. и никому не хочется по 100 раз отвечать на один и тот же вопрос. день сурка мля.


--------------------
Удалил аккаунт. Прощайте!
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С/С++: Кроссплатформенное программирование, QT/Gtk+/wxWidgets"
JackYF
Любитель
  • В заголовке темы в квадратных скобках обозначьте используемую вами библиотеку, например: [QT],[GTK],[wx].
  • Если вопрос актуален только для некоторой версии библиотеки, либо, если вы пользуетесь не самой последней версией, укажите это. Например: [QT4], [GTK2].
  • Все начинающие изучать Qt - не забудьте зайти сюда.
  • Проставьте несколько ключевых слов темы, чтобы её можно было легче найти.
  • В вопросе укажите полную версию версию библиотеки, а также все дополнительные используемые программные пакеты.
  • Не забывайте пользоваться кнопкой "Код".
  • Телепатов на форуме нет! Задавайте чёткий, конкретный и полный вопрос. Указывайте полностью ошибки компилятора и компоновщика.
  • Новое сообщение должно иметь прямое отношение к тематике этого раздела. Флуд, флейм, оффтопик запрещены.
  • Категорически запрещается обсуждение вареза, "кряков", взлома программ и т.д.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, Любитель.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | С/С++: Кроссплатформенное программирование, Qt/Gtk+/wxWidgets | Следующая тема »


 




[ Время генерации скрипта: 0.0556 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.