1
我想從Qt4.8.6中抑制QtWebkit中的Javascript超時警告。我創建了QWebPage的子類(如下所示),並使用setPage將其添加到QWebView。但是,對話框仍然出現。在互聯網上搜索我發現的例子看起來像我的代碼,人們說是在工作(例如reimplement the shouldInterruptJavaScript() in Qt (C++))。我一定在做一些愚蠢的事情。如果我重寫一個像javascriptConsoleMessage 這樣的函數,那麼被稱爲OK。被覆蓋的插槽shouldInterruptJavaScript()沒有被調用
我的類:
class NoDialogWebPage : public QWebPage
{
Q_OBJECT
public:
NoDialogWebPage(QObject * parent = 0) : QWebPage(parent) {}
public slots:
bool shouldInterruptJavaScript()
{
return false;
}
};
它是如何從QWebView的容器叫:
m_pWebView = new QWebView(this);
m_pWebPage = new NoDialogWebPage(m_pWebView);
m_pWebView->setPage(m_pWebPage);