МихаилллСәуір 4, 2019, 6:44 Т.Ж.
Как в QML изменить текст лэйбла
Добрый день.
Как в QML изменить текст лэйбла?
В файле Page1Form.ui.qml прописан лэйбл
Label { id: page1Label2 x: 122 y: 409 width: 156 height: 56 text: qsTr("1 из 20") horizontalAlignment: Text.AlignHCenter font.pointSize: 20 }
В файле Page1.qml пытаюсь изменить текст лэйбла:
page1Button0.onClicked: //left button { page1Label2.text = "text" }
Но это не работает, компилятор говорит что page1Button0 не определен.
Рекомендуем хостинг TIMEWEB
Стабильный хостинг, на котором располагается социальная сеть EVILEG. Для проектов на Django рекомендуем VDS хостинг.Ол саған ұнайды ма? Әлеуметтік желілерде бөлісіңіз!
Пікірлер
Г
- Геній
- Қыр. 13, 2024, 12:46 Т.Қ.
C++ - Тест 001. Первая программа и типы данных
- Нәтиже:66ұпай,
- Бағалау ұпайлары-1
t
- torgaev_2024
- Қыр. 8, 2024, 6:20 Т.Ж.
C++ - Тест 001. Первая программа и типы данных
- Нәтиже:33ұпай,
- Бағалау ұпайлары-10
Соңғы пікірлер
Linux жүйесінде файлдарды қалай көшіруге болады Задумывались когда-нибудь о том, как мы привыкли доверять свои вещи службам грузоперевозок? Сейчас такие услуги стали неотъемлемой частью нашей жизни, особенно когда речь идет о переездах между …
ВР
Linux жүйесінде файлдарды қалай көшіруге болады Screenshot_20240802-065123.png
Влад РусоковТам. 2, 2024, 1:47 Т.Ж.
QML - Сабақ 016. SQLite деректер қоры және онымен QML Qt-та жұмыс істеу Здравствуйте, возникает такая проблема (я новичок): ApplicationWindow неизвестный элемент. (М300) для TextField и Button аналогично. Могу предположить, что из-за более новой верси…
Qt Linux - Сабақ 001. Linux астында Autorun Qt қолданбасы как сделать автозапуск для флэтпака, который не даёт создавать файлы в ~/.config - вот это вопрос ))
АК
Qt WinAPI - Сабақ 007. Qt ішінде ICMP Ping арқылы жұмыс істеу Без строки #include <QRegularExpressionValidator> в заголовочном файле не работает валидатор.
Анатолий КононенкоАқп. 5, 2024, 1:50 Т.Ж.
Енді форумда талқылаңыз
Evgenii LegotckoiМаусым 24, 2024, 3:11 Т.Қ.
при создании qml проекта Kits есть но недоступны для выбора Поставил Qt Creator 11.0.2. Qt 6.4.3 При создании проекта Qml не могу выбрать Kits, они все недоступны, хотя настроены и при создании обычного Qt Widget приложения их можно выбрать. В чем может …
BlinCTМаусым 25, 2024, 1 Т.Ж.
BlinCTМамыр 5, 2024, 5:46 Т.Ж.
Evgenii LegotckoiМамыр 2, 2024, 2:07 Т.Қ.
a page1Button0 существует? так уж сложилось, что при работе с QML нужно регулярно запускать qmake и пересобирать проект
page1Button0 существует. запуск qmake не помог
без полного кода страниц тяжело сказать, кроме очевидного что компилятор не видит кнопку.
п.с. по моему опыту, мне проще работать без Form, просто Page.qml, ее и в дизайнере можно открыть и так все необходимое на одной странице. как-то с формами не подружился
Компилятор видит кнопку, но не видит лэйбел
Вот код Page1Form.ui.qml
вызвать пытаюсь в Page1.qml
добавил в форму
property alias page1Label2: page1Label2
и все заработало. ну или обработку клик делать на форме, тоже работать будет
а вот если бы было все в одном файле, то можно обойтись без алиасов
Странно, но у меня все еще не работае.
Покажите пожалуйста ваш вариант.
Сделал так:
Сделал так, заработало. Спасибо!
работать будет как так
так и так
и вот так тоже(без Form.ui)
Забыл код вставить.
При той задаче вот так заработало:
Но при попытке сделать тоже действие из Page0.qml получаю старую ошибку.
Скажите пожалуйста, почему опять не видно этот лэйбел?
Забыл код вставить.
При той задаче вот так заработало:
Но при попытке сделать тоже действие из Page0.qml получаю старую ошибку.
Скажите пожалуйста, почему опять не видно этот лэйбел?
Попробовал так:
компилируется, но при переходе на страничку всегда появляется базовое значение
это похоже тоже странная магическая часть QML
еще работает такой вариант page.lable.text="some text" (page - это страница где нужный лейбл, при обрщении с одной страницы на другую, но при этом они должны быть все загружены и активны(например если в одном окне показывает сразу несколько страниц))
п.с. скорее всего при смене страницы через лоадер, старая страница становится недоступной. поэтому ее и не видно.
но оно еще все обнуляет при смене через лодер. никак не пойму, пока, как с этим обнулением бороться
и еще беда, в form.ui.qml почему то нельзя брать информацию из класса из с++ слоя.
как вариант, можно загружать несколько страниц одним пакетом, напремер через TabView, где каждый Tab нужная страница из одной группы, и через алиасы передавть значения(тогда может отпасть необходимость в лоадере). или можно передавть нужные значения в слой С++, и при загрузке новой страницы в лоадере брать данные из этого слоя
поэтому мне проще без форм
хорошо придумано.