gpt4 book ai didi

c++ - 使用 QWebview 会产生编译错误,但不是因为 .pro 文件中缺少 Qt += webkit

转载 作者:搜寻专家 更新时间:2023-10-31 00:35:36 25 4
gpt4 key购买 nike

我在 Qt 中创建了一个项目并向其中添加了一个 QWebview,然后我将 Qt += webkit 添加到 .pro 文件中。但是,在编译时,我得到这些错误:

...ui_mainwindow.h:42: error: undefined reference to `_imp___ZN8QWebViewC1EP7QWidget'
...ui_mainwindow.h:45: error: undefined reference to `_imp___ZN8QWebView6setUrlERK4QUrl'

错误引用这里(ui_mainwindow.h):

...
webView = new QWebView(centralWidget); // <-- First error here
webView->setObjectName(QStringLiteral("webView"));
webView->setGeometry(QRect(0, 0, 300, 200));
webView->setUrl(QUrl(QStringLiteral("about:blank"))); // <-- Second error here
MainWindow->setCentralWidget(centralWidget);
...

在 Program.pro 中:

QT       += core gui webkit

我认为这些错误通常在没有 Qt += webkit 的情况下发生,但在这种情况下不会发生这种情况。

最佳答案

...ui_mainwindow.h:42: error: undefined reference to `_imp___ZN8QWebViewC1EP7QWidget'

链接器未找到 webview 小部件符号。

I think those errors usually occur without Qt += webkit, but in this case that's not what's happening.

这是正确的,但是 QtWebkit 模块在 Qt 5 中被拆分为 webkit 和 webkitwidgets,因为在 Qt 5 中,小部件通常被移动到它们单独的模块中,因为构建 UI 的方式是提升的 QtQuick。

要解决此问题,您需要在项目文件中写入:

QT = webkit webkitwidgets

请注意,不必显式使用 coregui 模块,因为它们是默认添加的。另外,确保你也安装了 webkitwidgets 模块,否则即使是上面的也不够。

关于c++ - 使用 QWebview 会产生编译错误,但不是因为 .pro 文件中缺少 Qt += webkit,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23587995/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com