QMessageBox里面有链接,无法点击

我已经将textFormat设置为Qt::RichText ,但链接仍然是不可点击的。

 QMessageBox msgBox(this); msgBox.setWindowTitle(QApplication::applicationName() + " $VER " + QApplication::applicationVersion()); msgBox.setTextFormat(Qt::RichText); //this is what makes the links clickable msgBox.setText("<a href=\"google.com\">Google</a>"); msgBox.setStandardButtons(QMessageBox::Ok); msgBox.exec(); 

任何解决scheme 它被证实不与Qt 4.7一起工作。

它正在我的Qt 4.7.4下工作,尽管我不得不修改你的HTML 。 最小的例子:

 #include <QApplication> #include <QMessageBox> int main(int argc, char *argv[]) { QApplication app(argc, argv); QMessageBox msgBox; msgBox.setTextFormat(Qt::RichText); //this is what makes the links clickable msgBox.setText("<a href='http://google.com/'>Google</a>"); msgBox.setStandardButtons(QMessageBox::Ok); msgBox.exec(); return app.exec(); } 

如果我使用这个,浏览器选项卡会打开,并且在控制台中会出现以下消息:

 Created new window in existing browser session. 

如果我使用你的msgBox.setText我得到错误:

 gvfs-open: file:///tmp/b/google.com: error opening location: Error stating file '/tmp/b/google.com': No such file or directory