0

我使用 Qt 5.0 + mingw 构建我的应用程序,我想使用“webkitwidgets”模块。我在 .pro 文件中添加

QT += webkitwidgets

然后在我的代码中我创建了一个线程,我写了这个线程:

 QWebPage page;

当调试器到达这一行时,我的调试终止并出现以下错误:

》Microsoft Visual C++ 运行时库

此应用程序已请求运行时以不寻常的方式终止它。请联系应用程序的支持团队以获取更多信息。”

所以我什至不能声明 QWebPage 类型的变量。为什么会发生这种情况,有没有办法解决它?

4

1 回答 1

1

当遇到这样的崩溃时,首先观察 stdout、stderr 和调试通道,然后在调试器中运行它。

但是,正如您所说,您在线程中创建了 QWebPage: 那行不通。在 Qt(以及几乎所有其他 UI 工具包)中,所有 UI 类都必须存在于主线程中,即 QApplication 存在于其中。将声明移至主线程,它应该可以工作。此外,如果在应用程序退出之前没有离开块(通常只有 main() 中的情况),那么在堆栈上创建实例才是正确的事情。否则,您必须在堆上创建它。

于 2013-07-20T09:31:26.403 回答