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);