我正在尝试将 QWebpage::windowCloseRequested() 连接到一个只打印出调试消息的插槽。当我调用 window.close();在 JavaScript 中,它不会冒泡信号或调用槽...
connect(webView->page(), SIGNAL(windowCloseRequested()),this, SLOT(windowCloseRequested()));
插槽已设置,它在我的 window.h 文件中是这样的插槽:
public slots:
void windowCloseRequested();
函数定义为:
void MyWindow::windowCloseRequested(){
qDebug() << "I was called";
}
当我编译时,没有错误,之前有说我的插槽错了,我想通了那部分,没有更多的错误,但是现在当我点击一个链接,或者用 javascript 调用 window.close() 时一个加载的网页,它什么都不做。如果我手动调用该函数,它会打印出调试消息。
如有任何指点或帮助/解决方案,我们将不胜感激。请注意,上面的代码基于浏览器示例的 Tabwidget.cpp 代码。这是我能找到的最佳引用。
将 onclick 附加到 <a>
标签是......有问题的。使用 span 和 blammo,它有效。这就是为什么你应该在编码时休息一下,否则你会犯非常愚蠢的错误,浪费时间。
我是一名优秀的程序员,十分优秀!