我们需要创建&销毁QApplication的实例,因为我们想要在插件中将Qt用于现有的主机应用程序。构造/破坏QApplication会导致QWebView弄乱HTML的渲染
void multiQT()
{
int argc = 0;
QApplication app(argc, NULL);
QWebView view;
view.setHtml("<html><head><title>Title</title></head><body><h1>Hello World</h1></body></html>");
view.show();
app.exec();
}
main(int argc, char** argv)
{
// First call works fine, QWebView renders the HTML just fine
multiQT();
// Second call fails, QWebView strips HTML tags from HTML text and
// and renders "TitleHello World"
multiQT();
}
当第二次显示QWebView时,它不会正确呈现HTML。我们是否需要在QApplication或QWebView中进行一些额外的(重新)初始化?
我已经怀疑QApplication并不打算在单个进程中被破坏和构建。我希望有一种解决方法。感谢您的回答 – 2010-04-09 12:45:08