从 QTextBrowser 打开文件
Posted
技术标签:
【中文标题】从 QTextBrowser 打开文件【英文标题】:Open file from QTextBrowser 【发布时间】:2011-01-06 13:06:48 【问题描述】:我只是想编写一个代码来通过单击 QTextBrowser 中显示的链接来打开文件。但是文件没有打开,而是显示在 QTextBrowser 本身中。这是我的代码
void MainWindow::openTextEdit()
QTextBrowser *p = new QTextBrowser();
p->show();
p->append("<a href = \"/home/winbros/Test.cpp\"> Link </a>");
p->append("<a href = \"/home/winbros/Test.doc\"> Link </a>");
p->append("<a href = \"/home/winbros/Test.xls\"> Link </a>");
p->setOpenExternalLinks(true);
我正在使用 QT 创建器。伙计们请告诉我在这个意义上使用锚点点击。
【问题讨论】:
【参考方案1】:听起来anchorClicked 信号可能对您有用。它包含被点击链接的 URL,为 QUrl
。
编辑: OP 要求提供一个使用示例。我现在没有时间,但我大概会这样做:
-
让需要打开文件的类有一个插槽
foo
,它接受const QUrl&
。
foo
可以使用QUrl::toLocalFile
构造一个QFile
并打开它。
将您的QTextBrowser
的anchorClicked
信号连接到foo
。
【讨论】:
如果可能的话,能否请您给我一段关于如何在这种情况下使用它的代码?我已经浏览了您提供的链接,但无法弄清楚。以上是关于从 QTextBrowser 打开文件的主要内容,如果未能解决你的问题,请参考以下文章
从文件中动态更新 Qdialog 中的 QTextBrowser(由另一个作业更新)
如何将 QTextBrowser 的多个实例打印到一个 PDF 文件中?
当从 html 文件中读取 Unicode 内容时,为啥 Unicode 字体无法在 QTextBrowser 中正确显示?