Название: Доступ к qApp из qml Отправлено: BlackSoul от Август 29, 2012, 16:49 Доброго времени суток.
имеется qt приложение, которое выполняет некоторый qml код( допустим, задача стоит "получить список файлов в текущей папке, используя qml" ). Вопрос: Как можно получить доступ из qml к qApp или хотя бы QApplication::applicationDirPath() ? есть вариант наследования от QApplication с переопределением нужных методов и объявлением их Q_INVOKABLE( тогда можно будет в qml передать 1 объект и не париться ради каждого метода), но он мне не нравится. может есть еще варианты? Название: Re: Доступ к qApp из qml Отправлено: mutineer от Август 29, 2012, 16:57 Можно выставить любой наследник QObject в qml при помощи http://doc.crossplatform.ru/qt/4.7.x/qdeclarativecontext.html#setContextProperty
Название: Re: Доступ к qApp из qml Отправлено: BlackSoul от Август 30, 2012, 08:03 это понятно. но у него можно будет вызвать только слоты и методы с Q_INVOKABLE
Название: Re: Доступ к qApp из qml Отправлено: Patrin Andrey от Август 30, 2012, 08:17 есть вариант наследования от QApplication с переопределением нужных методов и объявлением их Q_INVOKABLE( тогда можно будет в qml передать 1 объект и не париться ради каждого метода), но он мне не нравится.
Наследоваться не стоит, ИМХО. Функционал который тебе может быть нужен, может быть реализован не через виртуальные функции, и тогда ничего не переопределишь. Лучше просто создать отдельный объект который через Q_INVOKABLE будет выполнять определённые действия. Название: Re: Доступ к qApp из qml Отправлено: kirill9617 от Январь 09, 2013, 09:34 Код cp_apppath -имя нашей ссылки после этого к ссылке можно обращатся из любого QML и JS кода например: Код: Image { |