【问题标题】:Qt C++ WebKit windowCloseRequested SignalQt C++ WebKit windowCloseRequested 信号
【发布时间】:2011-01-22 20:43:49
【问题描述】:

我正在尝试将 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";
}

当我编译时,没有错误,之前有人说我的插槽错误,我想出了那部分,没有更多错误,但是现在当我点击一个链接,或者调用 window.close() with javascript in加载的网页,它不做任何事情。如果我手动调用该函数,它会打印出调试消息。

任何指针或帮助/解决方案将不胜感激。请注意,上面的代码基于浏览器示例的 Tabwidget.cpp 代码。这是我能找到的最佳参考。

【问题讨论】:

  • 手动关闭窗口会发生什么?
  • 它关闭,没有错误或投诉。也就是说,当我单击标题栏右上角的 X 图标时,它会按预期关闭。
  • 我回答了我自己的问题,我很密集,但是随着代码的工作,我将把它留给将来参考,答案是一个有用的提醒,让你休息一下,稍后再回来.除非其他人不同意,否则我将删除该问题。

标签: c++ qt4 webkit signals slots


【解决方案1】:

将 onclick 附加到 &lt;a&gt; 标记是……有问题的。使用跨度和 blammo,它可以工作。这就是为什么你应该在编码时休息一下,否则你会犯非常愚蠢的错误而浪费时间。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多