Html-Code von QWebPage oder QWebView
Html-Code von QWebPage oder QWebView
Hallo,
ich lerne gerade Qt (hab mir ein Buch gekauft). Ich versuche gerade ein Programm zu schreiben und brauche mal kurz hilfe.
Wie kriege ich von QWebView den Html Code? Hab auch in QWebPage gesucht aber finde da auch nichts.
Und wie kann ich da Html Code einfügen/setzen?
(will soneart WYSIWYG-Editor bauen)
ich lerne gerade Qt (hab mir ein Buch gekauft). Ich versuche gerade ein Programm zu schreiben und brauche mal kurz hilfe.
Wie kriege ich von QWebView den Html Code? Hab auch in QWebPage gesucht aber finde da auch nichts.
Und wie kann ich da Html Code einfügen/setzen?
(will soneart WYSIWYG-Editor bauen)
-
Christian81
- Beiträge: 7319
- Registriert: 26. August 2004 14:11
- Wohnort: Bremen
- Kontaktdaten:
http://doc.trolltech.com/4.6/qwebview.html#setHtml würde ich sagen...
MfG Christian
'Funktioniert nicht' ist keine Fehlerbeschreibung
'Funktioniert nicht' ist keine Fehlerbeschreibung
-
Christian81
- Beiträge: 7319
- Registriert: 26. August 2004 14:11
- Wohnort: Bremen
- Kontaktdaten:
Ja habe ich und so wie ich das verstanden habe (mit meinem Englisch Kenntnis) setzt diese Methode den Inhalt.
Ich will aber den Inhalt haben.
Mein Codeausschnitt:
Nach diesem Code hab ich dann "hallo" (Fettgeschrieben) im QWebView()
Ich will aber den Inhalt haben.
Mein Codeausschnitt:
Code: Alles auswählen
editorWeb = new QWebView();
editorText = new QTextEdit();
QString html = "<b>hallo</b>";
setCentralWidget(editorWeb);
QUrl url = QUrl("http://www.pisound.de");
editorWeb->load(url);
editorWeb->setHtml(html, url);
editorText->setText(html);Da du eine andere Doku wie wir zu haben scheinst, poste ich mal den relevanten Abschnitt:
void QWebView::setHtml ( const QString & html, const QUrl & baseUrl = QUrl() )
Sets the content of the web view to the specified html.
External objects such as stylesheets or images referenced in the HTML document are located relative to baseUrl.
The html is loaded immediately; external objects are loaded asynchronously.
When using this method, WebKit assumes that external resources such as JavaScript programs or style sheets are encoded in UTF-8 unless otherwise specified. For example, the encoding of an external script can be specified through the charset attribute of the HTML script tag. Alternatively, the encoding can also be specified by the web server.
See also load(), setContent(), and QWebFrame::toHtml().
Doch das gleiche steht da oben in Link auch.
Wie es aussieht ist diese Methode zum setzen des Html-Codes im QWebWiev, oder hab ich das falsch übersetzt
?
Ich möchte Aber den Inhalt von QWebView haben!!! Ich möchte den Inhalt als String haben und ihn verändern.
Übersetzung: Setzt den Inhalt von "WebView" zu dem angegebenen Html.Sets the content of the web view to the specified html.
Übersetzung: Externe Objekte, solche wie Stylesheets oder Bilder in dem Html Document sind lokal relativ zu "baseUrl.External objects such as stylesheets or images referenced in the HTML document are located relative to baseUrl.
Code: Alles auswählen
void QWebView::setHtml ( const QString & html, const QUrl & baseUrl = QUrl() )
// html ist der Html-Code
// baseUrl ist der Pfad zu Externen Dateien
Ich möchte Aber den Inhalt von QWebView haben!!! Ich möchte den Inhalt als String haben und ihn verändern.
Ok sorry, aber wenn mir die Funktion "void QWebView::setHtml" gepostet wird dann denke ich auch das die Funktion gemeint ist
außerdem kann ich Html und man kann die Webseiten ohne Frame erstellen, deswegen dachte ich das QWebFrame was für Webseiten mit Frames ist.
So, ich hab das jetzt mit QWebFrame gemacht aber trozdem geht es nicht. QWebView ladet aber die Seite.
Wenn ich die Code Zeile: auskommentiere, dann steht im editorText (QTextEdit) "<b>hallo bla bla bla bla</b>". Also klappt was mit frame nicht.
So, ich hab das jetzt mit QWebFrame gemacht aber trozdem geht es nicht. QWebView ladet aber die Seite.
Code: Alles auswählen
QString html = "<b>hallo bla bla bla bla</b>";
QUrl url = QUrl("http://www.pisound.de");
editorWeb->load(url);
QWebFrame* frame = editorWeb->page()->mainFrame();
html = frame->toHtml();
editorText->setText(html);
Code: Alles auswählen
html = frame->toHtml();