Frage

Gibt es eine Möglichkeit, den Zugang der erzeugten Widgets von INPUT und SELECT auf einer Seite in WebKit, mit Qt?

Auf einem verwandten beachten, tut WebKit diese Widgets bieten, oder es zurück zu Qt delegiert sie zu generieren?

War es hilfreich?

Lösung

Alles in in QWebView nicht die herkömmlichen Qt-Widget-System. Es ist nur HTML, von WebKit gemacht. Aber Sie können auf den HTML-Zugriff durch die evalJS Funktion. Code-Beispiel:

 QString Widget::evalJS(const QString &js)
 {
     QWebFrame *frame = ui->webView->page()->mainFrame();
     return frame->evaluateJavaScript(js).toString();
 }

 evalJS(QString("document.forms[\"f\"].text.value = \"%1\";").arg(fromText));

 evalJS(QString("document.forms[\"f\"].langSelect.value = \"%1\";").arg(langText));

 evalJS(QString("translate()"));

 QString from = evalJS("document.forms[\"f\"].text.value");
 QString translation = evalJS("document.forms[\"f\"].translation.value");
 ui->textEditTo->setText(translation);

Andere Tipps

Es gibt keine "Widgets". Neuere Browser zeigt alle Elemente selbst Overlays usw. zu ermöglichen.

Wenn Sie sie das DOM verwenden manipulieren wollen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top