Russian Qt Forum
Ноябрь 27, 2024, 07:06 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: [РЕШЕНО] Ошибка метода textEdit->append()  (Прочитано 5462 раз)
SuleymanStalskiy
Гость
« : Октябрь 27, 2014, 16:54 »

Qt creator 3.2.1
Qt 5.3.2
OS Windows7 x64

Пытаюсь вывести дату на поле textEdit, получаю непонятный символ в виде квадрата(см. вложение)
и ошибку "OpenType support missing for script 66"
Код:
void MainWindow::printDate()
{
    QDate dateM = ui->dateEditT->date();
    int year = dateM.year();
    ui->textEditTest->append(" year:" + (QString)year);
    qDebug() << "year: " << year << endl;

}


при этом qDebug() отрабатывает корректно
подскажите в какую сторону копать.
« Последнее редактирование: Октябрь 28, 2014, 06:02 от SuleymanStalskiy » Записан
gil9red
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 1805



Просмотр профиля WWW
« Ответ #1 : Октябрь 27, 2014, 18:20 »

О боже, и кто вас научил такое приведение
Код:
 ui->textEditTest->append(" year:" + (QString)year);
делать? О_о

Используйте http://qt-project.org/doc/qt-5/qstring.html#number:
Код:
 ui->textEditTest->append(" year:" + QString::number(year));
Записан

Alex Custov
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2063


Просмотр профиля
« Ответ #2 : Октябрь 27, 2014, 18:27 »

попахивает незнанием языка, бросьте Qt и займитесь сперва С++.
Записан
SuleymanStalskiy
Гость
« Ответ #3 : Октябрь 27, 2014, 19:49 »

попахивает незнанием языка, бросьте Qt и займитесь сперва С++.

спасибо за ответ, сегодня бросаю изучать программирование на Qt
Записан
lesav
Частый гость
***
Offline Offline

Сообщений: 235


qnx.org.ru


Просмотр профиля WWW
« Ответ #4 : Октябрь 27, 2014, 19:55 »

Используйте http://qt-project.org/doc/qt-5/qstring.html#number:
Код:
 ui->textEditTest->append(" year:" + QString::number(year));

А мне больше нравится http://qt-project.org/doc/qt-5/qstring.html#arg
Код:
 ui->textEditTest->append( QString(" year: %1").arg(year) );
Записан

lesav
Частый гость
***
Offline Offline

Сообщений: 235


qnx.org.ru


Просмотр профиля WWW
« Ответ #5 : Октябрь 27, 2014, 20:00 »

а есть еще фкусняшка QString::sprintf

Но она не рекомендуется к применению 
Warning: We do not recommend using QString::sprintf() in new Qt code.
Записан

gil9red
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 1805



Просмотр профиля WWW
« Ответ #6 : Октябрь 27, 2014, 21:22 »

Используйте http://qt-project.org/doc/qt-5/qstring.html#number:
Код:
 ui->textEditTest->append(" year:" + QString::number(year));

А мне больше нравится http://qt-project.org/doc/qt-5/qstring.html#arg
Код:
 ui->textEditTest->append( QString(" year: %1").arg(year) );

Мне тоже Улыбающийся
Записан

Alex Custov
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2063


Просмотр профиля
« Ответ #7 : Октябрь 27, 2014, 22:03 »

Мне тоже Улыбающийся

Однажды я тестировал number() и arg(), не поверив в утверждение, что arg() работает быстрее. Оказалось наоборот. Дело было ещё в Qt3. С тех пор мало что изменилось, и number() работает приблизительно в два раза быстрее, причём сложность обоих алгоритмов приблизительно одинаково растёт в зависимости от количества разрядов в числе, но number() всегда быстрее.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.142 секунд. Запросов: 22.