Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: QML без GUI. Переход с Qt Script на QML
Форум на CrossPlatform.RU > Библиотеки > Qt > Qt Quick
MishaUA
Доброго времени суток!
Моя программа имеет возможность подключения скриптов через Qt Script. Скрипту передается некий объект проги (который от QObject) и он им может манипулировать, так же, сама прога может вызывать функции скрипта через QScriptEngine->globalObject().property("function").call().
В последнем обновлении (Qt 5.5) модуль Qt Script объявлен устаревшим и рекомендуется переход на QML, поэтому и я задался вопросом о переходе, да и возможностей в QML побольше.
Сколько видел примеров QML в инете, то все они ориентированы на GUI. А возможно ли использовать QML без GUI? Тоесть, чтобы пользователь просто мог писать скрипты в которых есть функции с заранее определенными именами, а прога могла эти функции вызывать?
Спасибо!
reeshkov
http://qml.ucoz.com/publ/stati_po_qml/inte...ml_i_c/5-1-0-14
Цитата
Обработка Qt-сигналов в QML

Qt C++ сигналы могут быть обработаны с помощью выражений на языке JavaScript в QML-контексте. Пусть класс CallableClass из предыдущего примера также содержит свой сигнал: cppSignal ().

class CallableClass : public QObject
{
Q_OBJECT
...
signals:
void cppSignal();
};

Сигнал может быть обработан в QML при помощи элемента Connections. Этот элемент может быть использован для обработки сигналов любого целевого объекта, в том числе и других элементов QML. Обработчик сигнала будет называться onSignalName. Здесь первая буква в имени сигнала становится заглавной.

Connections {
target: cppObject

onCppSignal: { console.log("QML function called!"); }

}
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2024 IPS, Inc.