Russian Qt Forum

Qt => Qt Quick => Тема начата: Larry от Август 27, 2015, 16:50



Название: Double click в WebView
Отправлено: Larry от Август 27, 2015, 16:50
Добрый день, форумчане.
Возник такой вопрос, как обработать DoubleClick в webview. Попытался
Код:
WebView
    {
        id: mapview

        anchors.fill: parent

        url: "google.html"

        MouseArea
        {
            anchors.fill: parent

            onClicked:
            {
                console.log(qsTr("Single Click webview"));
            }

            onDoubleClicked:
            {
                console.log(qsTr("Double Click webview"));
            }
        }
    }

но к сожалению это выдает ошибку. Хотел это использовать для зума карты Google maps по двойному клику.


Название: Re: Double click в WebView
Отправлено: Larry от Август 27, 2015, 21:15
Ни у кого никаких мыслей?
Подскажите, а можно сделать emit сигнала из qml в javascript?


Название: Re: Double click в WebView
Отправлено: navrocky от Ноябрь 23, 2015, 14:00

Цитировать
Подскажите, а можно сделать emit сигнала из qml в javascript?

WebView использует нативный контрол. Поэтому его функционал ограничен в плане отлова событий, перекрытия другими QML компонентами.

Для взаимодействия C++/QML <==> JS можно попытаться использовать Qt WebChannel http://doc.qt.io/qt-5/qtwebchannel-index.html (http://doc.qt.io/qt-5/qtwebchannel-index.html), которые придумали для нового WebEngine. Успех не гарантирую, в доке про это не сказано ни слова.

Qt WebChannel позволяет пробрасывать в JS QObject используя для передачи веб-сокет.