QTextBrowser versch. Dokumente
Verfasst: 15. August 2010 02:03
Hallo,
ich moechte zwischen zwei Dokumenten wechseln, wobei jedes auf das andere verlinkt ist,
so nun hab ich das so gemacht:
cursor->insertHtml("<html><title>Group</title><a href = Person>Klick1</a></html>");
cursor->insertHtml("<html><title>Person</title><a href = Group>Klick2</a></html>");
nun krieg ich als fehler:
QTextBrowser: No document for Person
(meint er damit nun das document das er hat also ein QDokument oder ein HTML dokument)
und natuerlich soll jedes dokument nur allein sichtbar sein.
wie krieg ich das hin?
nvidia
//Edit 1
ich hab es jetzt ueber zwei verschiedene Dokumente versucht.
Also wenn der Link geklickt wird, werden die Dokumente gewechselt.
Das einzige Problem ist, das der TextBrowser mir meldet, das das Dokument, zu dem der Link fuehrt nicht gefunden wird, da er ja nicht existiert und er zeigt mir eine leere Seite an anstatt, des neuen Dokuments.
Ein was versteh ich nicht so ganz, das Signal anchorClicked() und der Link, werden die gleichzeitig ausgefuehrt oder nacheinander?
Weil wenn ich im Slot fuer anchorClicked() z.b. setOpenLinks(false); setze
duerfte er den Link nicht mehr ausfuehren, wenn der Slot fuer anchorClicked(); ausgefuert ist. Nun leider ist das nicht so, aber nach dem qDebug() << kommt das qDebug aus dem slot der nach anchorClicked(); ausgefuehrt wird, eindeutig bevor der QTextBrowser meldet, dass das Signal ausgefuehrt wird.
Ich kann leider nicht das setOpenLinks(false); nicht vorher setzen weil sonst gar keine links mehr funktionieren, die in dem Dokument selbst herumlinken.
Also dabei ist das Problem, dass zwar die zweite Seite erzeugt wird, aber leider wird nur eine leere Seite angezeigt, weil der Link ins leere zeigt.
//Edit 2:
http://doc.trolltech.com/4.6/qtextbrows ... ource-prop
kann man damit irgentwie das andere Dokument erreichen?
Es wuerde auch reichen, wenn einfach eine neue leere Seite durch einen Link erreicht wird, so was wie eine unterseite z.b. home/page1
ich moechte zwischen zwei Dokumenten wechseln, wobei jedes auf das andere verlinkt ist,
so nun hab ich das so gemacht:
cursor->insertHtml("<html><title>Group</title><a href = Person>Klick1</a></html>");
cursor->insertHtml("<html><title>Person</title><a href = Group>Klick2</a></html>");
nun krieg ich als fehler:
QTextBrowser: No document for Person
(meint er damit nun das document das er hat also ein QDokument oder ein HTML dokument)
und natuerlich soll jedes dokument nur allein sichtbar sein.
wie krieg ich das hin?
nvidia
//Edit 1
ich hab es jetzt ueber zwei verschiedene Dokumente versucht.
Also wenn der Link geklickt wird, werden die Dokumente gewechselt.
Das einzige Problem ist, das der TextBrowser mir meldet, das das Dokument, zu dem der Link fuehrt nicht gefunden wird, da er ja nicht existiert und er zeigt mir eine leere Seite an anstatt, des neuen Dokuments.
Ein was versteh ich nicht so ganz, das Signal anchorClicked() und der Link, werden die gleichzeitig ausgefuehrt oder nacheinander?
Weil wenn ich im Slot fuer anchorClicked() z.b. setOpenLinks(false); setze
duerfte er den Link nicht mehr ausfuehren, wenn der Slot fuer anchorClicked(); ausgefuert ist. Nun leider ist das nicht so, aber nach dem qDebug() << kommt das qDebug aus dem slot der nach anchorClicked(); ausgefuehrt wird, eindeutig bevor der QTextBrowser meldet, dass das Signal ausgefuehrt wird.
Ich kann leider nicht das setOpenLinks(false); nicht vorher setzen weil sonst gar keine links mehr funktionieren, die in dem Dokument selbst herumlinken.
Also dabei ist das Problem, dass zwar die zweite Seite erzeugt wird, aber leider wird nur eine leere Seite angezeigt, weil der Link ins leere zeigt.
//Edit 2:
http://doc.trolltech.com/4.6/qtextbrows ... ource-prop
kann man damit irgentwie das andere Dokument erreichen?
Es wuerde auch reichen, wenn einfach eine neue leere Seite durch einen Link erreicht wird, so was wie eine unterseite z.b. home/page1