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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: Как записать в label переменную int ?  (Прочитано 12392 раз)
Alex8lf
Гость
« : Декабрь 16, 2013, 07:41 »

Имеется переменная int. Требуется вывести её в лэйбл. Как это реализовать, чтобы компилятор не посылал меня куда подальше?
Записан
mevn
Гость
« Ответ #1 : Декабрь 16, 2013, 07:55 »

ui.label -> setText(QString::number(val));
Записан
gil9red
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 1805



Просмотр профиля WWW
« Ответ #2 : Декабрь 16, 2013, 17:26 »

Код
C++ (Qt)
ui.label->setText( QString( "%1" ).arg( val ) );
Улыбающийся
Записан

Alex8lf
Гость
« Ответ #3 : Декабрь 16, 2013, 21:52 »

Код
C++ (Qt)
ui.label->setText( QString( "%1" ).arg( val ) );
Улыбающийся
Спасибо большое, это работает. Только не могли бы вы объяснить, что делает "QString( "%1" )" ?

ui.label -> setText(QString::number(val));

Этот способ тоже работает, спасибо.
Записан
Bepec
Гость
« Ответ #4 : Декабрь 16, 2013, 22:01 »

А можно и объединить...
Код:
ui.label->setText( QString( "%1" ).arg( QString::number(val,10) ) );
Записан
Alex8lf
Гость
« Ответ #5 : Декабрь 16, 2013, 22:05 »

А можно и объединить...
Код:
ui.label->setText( QString( "%1" ).arg( QString::number(val,10) ) );
А зачем? Второй способ проще. Или этот меньше ресурсов ест?
Записан
Bepec
Гость
« Ответ #6 : Декабрь 16, 2013, 22:18 »

Когда работаете с Qt забудьте слова "это меньше ресурсов есть".
Ну а совмещать просто ради интереса.
Равнозначные операции. Просто разный вид.

И совет - читай документацию. Открывай Assistant + Google translate и вперёд.
Записан
gil9red
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 1805



Просмотр профиля WWW
« Ответ #7 : Декабрь 16, 2013, 22:23 »

Код
C++ (Qt)
ui.label->setText( QString( "%1" ).arg( val ) );
Улыбающийся
Спасибо большое, это работает. Только не могли бы вы объяснить, что делает "QString( "%1" )" ?

ui.label -> setText(QString::number(val));

Этот способ тоже работает, спасибо.

То что в строке как %1 заменится на arg() и т.д. Улыбающийся
Удобная штука! Позволяет сложные предложения довольно просто оформлять:
Код
C++ (Qt)
ui.label->setText( QString( "%1 в %2, не считая %3" ).arg( 3 ).arg( "баре" ).arg( "<username>" ) );
 
Какой порядок вызова arg(), такое %<номер> заменится на то, что передали в параметрах Улыбающийся
и не обязательно в строке % в том же порядке писать - главное порядок вызывов arg сохранить Улыбающийся
Записан

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

Сообщений: 2063


Просмотр профиля
« Ответ #8 : Декабрь 16, 2013, 23:30 »

А можно и объединить...
Код:
ui.label->setText( QString( "%1" ).arg( QString::number(val,10) ) );

штоэта
Записан
Bepec
Гость
« Ответ #9 : Декабрь 16, 2013, 23:44 »

То же что во втором и третьем сообщении этой темы Улыбающийся
Записан
carrygun
Гость
« Ответ #10 : Декабрь 17, 2013, 04:24 »

Какой порядок вызова arg(), такое %<номер> заменится на то, что передали в параметрах Улыбающийся
и не обязательно в строке % в том же порядке писать - главное порядок вызывов arg сохранить Улыбающийся
Есть забавный баг (фича?): QString("text %1, %2").arg("another text %2").arg("test");
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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