2016-04-23 8 views
-2

私のアプリケーションはランダムにクラッシュします。私はいくつかのURLを読み込むためにWebビューを使用して、常に警告があります。ラズベリーパイ2 Qtアプリのクラッシュ

qnetworkreplyimplprivate :: error: internal problem, this method must only called ones stack

#include "mainwindow.h" 
#include "ui_mainwindow.h" 

MainWindow::MainWindow(QWidget *parent) : 
    QMainWindow(parent), 
    ui(new Ui::MainWindow) 
{ 
    ui->setupUi(this); 
    setAcceptDrops(true); 
    web->load(QString("http:my url")); 
// QThread *webThread = new QThread; 
// web.moveToThread(webThread); 
    web->page()->setLinkDelegationPolicy(QWebPage::DelegateAllLinks); //Handle link clicks by yourself 

    connect(web, SIGNAL(linkClicked(QUrl)),this,SLOT(urlCliked(QUrl))); 
    web->showMaximized(); 
} 

答えて

0

:あなたはまた、対応するヘッダーを含める必要があるだろうweb->load(QString("http:my url"));

のようにwebにアクセスする前に、あなたのコンストラクタで

web = new QWebView(this); 

:あなたは、おそらくのようなものを必要としますラズベリーパイ2と私はQt内で不適切なgccバージョンを使用していたことがわかりました。 正しいgccバージョンで同じQtバージョンを使用してください。

0

webポインタがぶら下がっています。何かを指すように初期化する必要があります。私は上のQtのバージョン5.3を使用していた

#include <QWebView> 
+0

私はそれを私のmainwindow.hに持っています。 QWebView * web = new QWebView(); はまだクラッシュしてランダムに発生します。 – Mugtaba

+0

ここに表示されているコードはクラスのコンストラクタです。したがって、他の関数のヘッダにQWebViewを作成していても、コンストラクタの前に呼び出されることはありません。メインウィンドウも表示できます。 hヘッダファイル? – Hammerzeit

+0

スペースがコードでは不十分です。私は単にヘッダファイルにQWebView * web = new QWebView()を持っています。 cppファイルにURLをロードします。 – Mugtaba

関連する問題