Hi,
Ich schreibe gerade ein Programm, dass daten aus dem Internet holt und die in einem QTextBrowser festhält. Ich möchte das so einrichten, dass wenn ich in diesem QTextBrowser auf z.B. einen Link klicke, dass dann eine bestimmte Funktion ausgeführt wird.
Noch ein Beispiel:
Ich bekomme die Daten www.python-forum.de und 80. Und dann baue ich auf dem TextBrowser <a href="python_funktion_ausführen">www.python-forum.de Port: 80</a> Wenn ich jetzt auf den Link klicke soll ein HTTP request aufgebaut werden, und die Daten zurückgesendet werden.
Um das auszuführen müsste ich doch www.python-forum.de und 80 dieser Funktion als Parameter übergeben.
Ist das überhaupt möglich oder wie würdet ihr das machen? Geht das vielleicht, wenn ich dem link den onclick parameter hinzufügen würde?
MfG Robin
<a> Tag soll Python funktion ausführen
Ich würde es so machen: Google nach "QTextBrowser link handler", finde passende Seite, finde dort heraus, dass es ein "linkClicked" Signal gibt, mache, was immer nötig ist, um da eine passende Implementierung ranzustricken (wie das geht, weiß ich nicht, da ich Qt nicht kennt) und das sollte es dann doch gewesen sein.
Stefan
Stefan
Ich habe das jetzt probiert, aber es funktioniert nicht. Ich habe den code:
htmlbrowser ist ein textBrowser
Code: Alles auswählen
self.connect(self.htmlbrowser, QtCore.SIGNAL("linkClicked(const QString & link)"), self.print_hi)
def print_hi(self, link):
print link
[b][i]ein kleines game für die die lust haben http://konaminut.mybrute.com[/i][/b]
;-)
;-)
Hallo,
die verlinkte Dokumentation ist auch etwas älter (ich nehme an, du benutzt PyQt4?).
Versuchs mal mit anchorClicked.
Gruß
Whitie
die verlinkte Dokumentation ist auch etwas älter (ich nehme an, du benutzt PyQt4?).
Versuchs mal mit anchorClicked.
Gruß
Whitie