根据Qt对QWebPage [Slot ShoudInteruptJavaScript]的帮助,位于here:



我不希望qt在javascript runnig长时间显示消息。
那么,我该如何重新实现ShoudInteruptJavaScript?我应该在哪里创建它?
请给我一个样品
谢谢

最佳答案

您需要的所有信息都在文档中。

创建一个继承自QWebPage的新自定义类,确保它是一个Q_OBJECT来接收信号。

class MyFunkyPage:public QWebPage {
Q_OBJECT
公共(public)插槽:
bool shouldInterruptJavaScript(){
QApplication::processEvents(QEventLoop::AllEvents,42);
//忽略错误
返回false;
}
};

将您的QWebView的页面设置为QWebPage的自定义子类。

setPage(new MyFunkyPage());

然后,当页面收到此信号时,它不会停止脚本的执行,也不会显示对话框。

08-16 10:34