2011-01-06 85 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