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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: Как узнать о завершении создания объекта  (Прочитано 3170 раз)
mutineer
Гость
« : Январь 05, 2012, 14:55 »

Доброго времени суток.
Создаю новый класс (в С++), выставляю его в QML как новый тип. Затем в QML создаю объект этого типа

Код
Javascript
MyType {
       id: my_id
 
       prop_1: "value_1"
       prop_2: "value_2"
   }
 

При этом вызывается конструктор моего класса, а затем сеттеры для свойств. А есть ли способ узнать (в плюсовом коде этого класса), что QML уже закончил создание объекта моего класса?
« Последнее редактирование: Январь 05, 2012, 15:35 от mutineer » Записан
Ubuntu_linux
Гость
« Ответ #1 : Январь 05, 2012, 15:33 »

Код
QBasic/QuickBASIC
MyType {
       id: my_id
 
       prop_1: "value_1"
       prop_2: "value_2"
 
Component.onCompleted: {console.debug("# create done!")}
}
Записан
mutineer
Гость
« Ответ #2 : Январь 05, 2012, 15:33 »

Угу, тогда уточнение: узнать мне это надо в плюсовом коде
Записан
Ubuntu_linux
Гость
« Ответ #3 : Январь 05, 2012, 15:37 »

Угу, тогда уточнение: узнать мне это надо в плюсовом коде

Код
QBasic/QuickBASIC
MyType {
       id: my_id
 
       prop_1: "value_1"
       prop_2: "value_2"
 
 
Component.onCompleted: {console.debug("# create done!");createDone() }
}
 
 

C++

signals:
void  createDone()

public slots:
void done(){qDebug()<<"# create done C++"}
.....
connection(this,SIGNAL(createDone()),this,SLOT(done()));
Записан
mutineer
Гость
« Ответ #4 : Январь 05, 2012, 15:39 »

интересно, но не подходит - создание отличается от создания всех других компонентов, что введет юзера в заблуждение. Можно легко забыть дописать этот вызов
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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