2011-01-06 82 views
1

我只是想通过点击QTextBrowser中显示的链接来编写打开文件的代码。但是文件没有打开,而是在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 Creator的。请让我知道在这个意义上使用主播点击。

回答

1

听起来像anchorClicked信号可能对您有用。它包含点击链接的网址为QUrl

编辑: OP要求提供一个使用示例。我没有时间,现在,但这里大概我会做什么:

  1. 我们需要打开一个文件中的类有一个插槽foo,需要一个const QUrl&
  2. foo可以使用QUrl::toLocalFile构建QFile并打开它。
  3. 将您的QTextBrowseranchorClicked信号连接到foo
+0

如果可能,请给我一段关于如何在这种情况下使用它的代码?我已经通过你给出的链接,但不能做任何事情。 – Allwyn 2011-01-06 14:56:49