从Qt调用Javascript函数不显示输出

从Qt调用Javascript函数不显示输出,javascript,c++,qt,qt5,Javascript,C++,Qt,Qt5,我试图使用addToJavaScriptWindowObjectmwthod从QT调用HTML文件中的Javascript函数。我在StackOverflow上遵循了这一点,并完全按照公认的答案做了 我的代码如下 main.cpp #include <QApplication> #include <QDebug> #include <QtWebKitWidgets/QWebFrame> #include <QtWebKitWidgets/QWebPage

我试图使用
addToJavaScriptWindowObject
mwthod从QT调用HTML文件中的Javascript函数。我在StackOverflow上遵循了这一点,并完全按照公认的答案做了

我的代码如下

main.cpp

#include <QApplication>
#include <QDebug>
#include <QtWebKitWidgets/QWebFrame>
#include <QtWebKitWidgets/QWebPage>
#include <QtWebKitWidgets/QWebView>

class MyJavaScriptOperations : public QObject {
 Q_OBJECT  
 public:
  Q_INVOKABLE void sumOfNumbers(int a, int b) {
      qDebug() << a + b;
  }
 };

 int main(int argc, char *argv[]) 
 {
   QApplication a(argc, argv);
   QWebView *view = new QWebView();
   view->resize(400, 500);
   view->page()->mainFrame()->addToJavaScriptWindowObject("myoperations", new  MyJavaScriptOperations);
   view->load(QUrl("file://C:/programs/index.html"));
   view->show();
   return a.exec();
 }

   #include "main.moc"
index.html

<html>
 <body>
     <script type="text/javascript">
         myoperations.sumOfNumbers(12, 23);
    </script>
</body>

我的手术。sumOfNumbers(12,23);

当我在QtCreator中运行上述QT项目时,它会正确编译,甚至运行。我看到新窗口打开了,但是输出,在本例中,12+23=35的总和没有显示在
应用程序输出
窗口中。为什么会这样


为什么即使程序运行正常,我也无法查看输出?

听起来您好像忘了启用调试输出。您确定是在调试模式下生成的吗?尝试添加一个qDebug()
<html>
 <body>
     <script type="text/javascript">
         myoperations.sumOfNumbers(12, 23);
    </script>
</body>