Использование arg() |
Здравствуйте, гость ( Вход | Регистрация )
Использование arg() |
dsp |
10.2.2011, 5:30
Сообщение
#1
|
Студент Группа: Участник Сообщений: 51 Регистрация: 12.10.2010 Пользователь №: 2109 Спасибо сказали: 4 раз(а) Репутация: 0 |
В одном из примеров приложений для создания надписи на кнопках используется такие строчки
Вопросы: 1) Правильно ли я понял, что функция arg() конвертирует числа в строки? И то значение, которое будет возвращено этой функцией передается в строку в .. %1 (как это называется %1? маркеры?). 2) "За символом '%' может следовать символ 'L', когда последовательность заменяется локализованным представлением a. " Вот это я совсем не понял. Пример:
не понял, как получаем 12,345 3039. И на что влияет 'L' 3) Так работает: ,а вот так уже нет:
tr() как я понял для удобства локализации. С ней "надпись становится как бы строкой и arg() все делает правильно"? |
|
|
Litkevich Yuriy |
10.2.2011, 7:10
Сообщение
#2
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
Смотри описание этих функций. Их несколько перегруженных.
а вот так уже нет: buttons[i] = new QPushButton(("Button %1").arg(i + 1)); здесь ("Button %1") является последовательностью char, а у этого типа нет никаких методов. tr() как я понял для удобства локализации. С ней "надпись становится как бы строкой... не "как бы", QObject::tr(...) возвращает QString.Если тебе не нужно переводить строку, то можешь её передать в конструктор QString(), для создания временного объекта. Цитата buttons[i] = new QPushButton(QString("Button %1").arg(i + 1));
|
|
|
Текстовая версия | Сейчас: 15.1.2025, 18:24 |