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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: Регистрация объекта C++ для доступа из QML (не класса, а экземпляра класса)  (Прочитано 4668 раз)
Robotex
Гость
« : Сентябрь 29, 2013, 12:32 »

Добрый день
Помогите кто-нибудь с QML

Проблема вот в чем. Я могу написать C++ класс и зарегистрировать его для использования в QML. А можно ли сделать тоже самое для объекта класса? Например, у меня есть класс тумблер и куча объектов этого класса. И при этом мне нужно отобразить на экране эти тумблеры и иметь возможность переключать их, изменяя при этом данные соответствующего объекта.
Возможно такое?

С уважением,
Николай
Записан
mutineer
Гость
« Ответ #1 : Сентябрь 29, 2013, 12:44 »

Истанциировать эти объекты прямо в QML не вариант?

Или посмотри на QDeclarativeContext::setContextProperty
Записан
Robotex
Гость
« Ответ #2 : Сентябрь 29, 2013, 13:10 »

Ну тут мне хотелось бы работать именно с C++, а в QML только выводить отображение состояний объектов из C++
Записан
Robotex
Гость
« Ответ #3 : Сентябрь 29, 2013, 13:13 »

Т.е. есть у меня класс Ship, у него внутри есть объект Shields, отражающий состояние щитов корабля и позволяющий управлять ими, а в QML есть объект Shields, который является индикатором состояния щитов - я просто кинул его на поле и забыл про него, когда я изменяю состояние щитов в C++, индикатор автоматически обновится на экране. Но что если у меня несколько кораблей и у каждого должен быть свой индикатор?
Записан
mutineer
Гость
« Ответ #4 : Сентябрь 30, 2013, 00:07 »

Сделать один объект для внутреннего представления, а другой в qml для отображения и связать их
Записан
Robotex
Гость
« Ответ #5 : Сентябрь 30, 2013, 11:00 »

Я уже нашел решение: http://qt-project.org/doc/qt-5.0/qtqml/qtqml-cppintegration-contextproperties.html Всем спасибо.
Записан
mutineer
Гость
« Ответ #6 : Сентябрь 30, 2013, 11:02 »

Ага, про это был мой первый ответ
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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