如何自己处理QTextBrowser 的打开链接

如何自己处理QTextBrowser 的打开链接

想自己处理QTextBrowser打开链接,首先要setOpenLinks(false)。之后捕获anchorClicked信号,然后调用ShellExecute函数用系统默认浏览器打开url。参考代码如下

 1  MainWindow::MainWindow(QWidget  * parent) :
 2      QMainWindow(parent),
 3      ui( new  Ui::MainWindow)
 4  {
 5      ui -> setupUi( this );
 6      ui -> tBwsShow -> setOpenLinks( false );
 7 
 8      ui -> tBwsShow -> append(QString::fromLocal8Bit( " <a href=\ " http: // www.baidu.com\">www.baidu.com</a>"));
 9      
10      connect(ui -> tBwsShow,SIGNAL(anchorClicked(QUrl)),SLOT(on_tBwsShow_anchorClicked(QUrl)))
11  }
槽函数如下

1  void  MainWindow::on_tBwsShow_anchorClicked( const  QUrl  & arg1)
2  {
3      ShellExecuteA(NULL,  " open " , url.toString().toStdString().c_str(),  "" "" , SW_SHOW);  
4  }

你可能感兴趣的:(如何自己处理QTextBrowser 的打开链接)