如何使QGraphicsTextItem点击?
-
26-09-2019 - |
题
在我的软件的“关于框”,我用了一个QGraphicsTextItem
,显示约文本。
这个文本包含超文本链接(在形式:<a href="http://some.random.site">link</a>
)。
在项显示正确(超文本链接是蓝色和下划线)。然而,当我点击它们,什么都不会发生。
下面是我如何创建的QGraphicsTextItem
:
d_about_text_item = new QGraphicsTextItem;
d_about_text_item->setTextInteractionFlags(Qt::TextBrowserInteraction);
d_about_text_item->setHtml(aboutText());
据我所知的 Qt的文档,调用setTextInteractionFlags
应该让我来处理特殊的超文本链接点击事件。
还有什么我应该做的,以便能够点击链接,并在系统默认浏览器中显示链接的页面?
解决方案
我发现我做错了什么:
我含有QGraphicsView
不得不setInteractive()
设置为false
。我删除它,因为现在,它工作正常。
其他提示
FWIW我使用标准QMessageBox提示::关于方法和简单地传递原始HTML作为文本 - 链接工作细
QMessageBox::about(this, tr("About"), tr("<h1>My App</h1><p><a href='www.stackoverflow.com'>Click me!</a></p>"));
不隶属于 StackOverflow