Frage

In der "About-Box" meine Software, habe ich eine QGraphicsTextItem den über Text zu zeigen.

Dieser Text enthält Hypertext-Links (in Form von: <a href="http://some.random.site">link</a>).

Die Position zeigt sich richtig (Hypertext-Links sind blau und unterstrichen). Allerdings, wenn ich auf sie klicken, passiert nichts.

Hier ist, wie ich die QGraphicsTextItem erstellt:

d_about_text_item = new QGraphicsTextItem;
d_about_text_item->setTextInteractionFlags(Qt::TextBrowserInteraction);
d_about_text_item->setHtml(aboutText());

Als ich die Qt Dokumentation verstehen, der Aufruf von setTextInteractionFlags sollte mir erlauben, spezielle Hypertext-Links klicken, Ereignisse zu behandeln.

Gibt es noch etwas sollte ich tun, der Lage sein, auf die Links klicken und die verknüpfte Seite im Standardsystem Browser angezeigt?

War es hilfreich?

Lösung

fand ich, was ich falsch gemacht habe:

Meine enthält QGraphicsView hatte setInteractive() Set false. Ich entfernte es und da jetzt, es funktioniert gut.

Andere Tipps

FWIW Ich verwende den Standard QMessageBox :: über Methode und einfach roh HTML als Text übergeben -. Links funktionieren

QMessageBox::about(this, tr("About"), tr("<h1>My App</h1><p><a href='www.stackoverflow.com'>Click me!</a></p>"));
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top