2012-01-23 7 views
1

私は、メインスレッドの文書ノードに動的にHTMLコンテンツを設定しようとしています。QWebFrame :: setHtmlクラッシュ後

   QWebElement dynamicContent = ui->webView->page()->mainFrame()->documentElement().findFirst("div#dynamicContent"); 
       if (QWebFrame *frame = dynamicContent.webFrame()) 
       { 
        param = "<html><body></body></html>"; 
        frame->setHtml(param); 
       } 

これらの行は正常に実行されますが、その後、私は、コールスタック

0 QWebPluginDatabase::searchPaths QtWebKitd4  0x1009deca 
1 QWebPluginDatabase::searchPaths QtWebKitd4  0x10749451 
2 QWebPluginDatabase::searchPaths QtWebKitd4  0x10749434 
3 QWebPluginDatabase::searchPaths QtWebKitd4  0x10749347 
4 QWebPluginDatabase::searchPaths QtWebKitd4  0x10748469 
5 QWebPluginDatabase::searchPaths QtWebKitd4  0x1074856f 
6 QWebPluginDatabase::searchPaths QtWebKitd4  0x107100d6 
7 QWebPluginDatabase::searchPaths QtWebKitd4  0x107244ce 
8 QWebPluginDatabase::searchPaths QtWebKitd4  0x1074cd58 
9 QWebPluginDatabase::searchPaths QtWebKitd4  0x109f9462 
10 QWebPluginDatabase::searchPaths QtWebKitd4  0x109fa78e 
11 QWebPluginDatabase::searchPaths QtWebKitd4  0x10725e17 
12 QWebPluginDatabase::searchPaths QtWebKitd4  0x10725b25 
13 QWebPluginDatabase::searchPaths QtWebKitd4  0x1074c180 
14 QWebPluginDatabase::searchPaths QtWebKitd4  0x1074cf2e 
15 QWebPluginDatabase::searchPaths QtWebKitd4  0x109f9462 
16 QWebPluginDatabase::searchPaths QtWebKitd4  0x109fcdb2 
17 QWebPluginDatabase::searchPaths QtWebKitd4  0x1074ca2e 
18 QWebPluginDatabase::searchPaths QtWebKitd4  0x10721800 
19 QWebPluginDatabase::searchPaths QtWebKitd4  0x10721383 
20 QWebPluginDatabase::searchPaths QtWebKitd4  0x107253c3 
21 QWebPluginDatabase::searchPaths QtWebKitd4  0x10720293 
22 QWebPluginDatabase::searchPaths QtWebKitd4  0x10750cba 
23 QWebPluginDatabase::searchPaths QtWebKitd4  0x10751ab9 
24 QWebPluginDatabase::searchPaths QtWebKitd4  0x108639e4 
25 QWebPluginDatabase::searchPaths QtWebKitd4  0x10863916 
26 QWebPluginDatabase::searchPaths QtWebKitd4  0x109ecb72 
27 QTemporaryFile::tr QtCored4  0x671ec7fa 
28 QPictureIO::init QtGuid4  0x65071a2e 
29 QPictureIO::init QtGuid4  0x6506f6aa 
30 QTemporaryFile::tr QtCored4  0x671ceb81 
31 QTemporaryFile::tr QtCored4  0x671d3d29 
32 QTemporaryFile::tr QtCored4  0x67214812 
33 QPictureIO::init QtGuid4  0x65071a2e 
34 QPictureIO::init QtGuid4  0x6506f6aa 
35 QTemporaryFile::tr QtCored4  0x671ceb81 
36 QTemporaryFile::tr QtCored4  0x671d3d29 
37 QTemporaryFile::tr QtCored4  0x671cfadb 
38 QTemporaryFile::tr QtCored4  0x672129dd 
39 InternalCallWinProc USER32  0x74d66238 
40 UserCallWinProcCheckWow USER32  0x74d668ea 
41 DispatchMessageWorker USER32  0x74d67d31 
42 DispatchMessageW USER32  0x74d67dfa 
43 QTemporaryFile::tr QtCored4  0x672139f6 
44 QPictureIO::init QtGuid4  0x6512c4ce 
45 QTemporaryFile::tr QtCored4  0x671cc68e 
46 QTemporaryFile::tr QtCored4  0x671cc7c0 
47 QTemporaryFile::tr QtCored4  0x671cf0fd 
48 QPictureIO::init QtGuid4  0x6506f398 
49 main main.cpp 28 0x401ec9  

成功しなかった任意のグーグルや問題のstackoverflowingと、アクセス違反を読みます。誰か他の人に同じ問題があった? QWebFrame :: setHtmlの正しい使い方は何ですか?

はQWebFrameの呼び出し中にあなたが

[解決]この問題が起こる:: setHtmlないメインスレッドからお願いします。

+0

なぜNULLポインタをチェックしなかったのですか? 'webFrame'はNULLポインタを返します。 'dynamicContent'は正しいエンティティですか? –

+0

はい、正しいです。さもなければ、私はfindFirstのアクセス違反をはるかに早く受け取ります。 – Orange

答えて

0

この問題を解決しました。答えはスレッドとは異なるsetHtmlメソッドを使用しないでください。

関連する問題