2010-01-17 20 views
6

Sadece küçük bir QT örneği oluşturmaya çalıştım ve bağlantı ifadesi derlenemedi. derleyicisinden hata iletisi şudur: Onu yanlış yapıyorumBağlanmak hakkında Newbie QT sorusu

"çağrısına için eşleşen işlevi 'MainWindow :: ... (bağlamak'"

Yardımlarınız için teşekkür ederim

?.
#ifndef MAINWINDOW_H 
#define MAINWINDOW_H 

#include <QMainWindow> 
#include <QNetworkAccessManager> 
#include <QNetworkReply> 

namespace Ui { 
    class MainWindow; 
} 

class MainWindow : public QMainWindow { 
    Q_OBJECT 
public: 
    MainWindow(QWidget *parent = 0); 
    ~MainWindow(); 

protected: 
    void changeEvent(QEvent *e); 

private: 
    Ui::MainWindow *ui; 
    QNetworkAccessManager networkManager; 

private slots: 
    void on_requestButton_clicked(); 
    void on_authenticationRequired(QNetworkReply* reply, QAuthenticator* auth); 
    void on_finished(QNetworkReply* reply); 
}; 

#endif // MAINWINDOW_H 

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

void MainWindow::on_requestButton_clicked() 
{ 

} 

void MainWindow::on_authenticationRequired(QNetworkReply* reply, QAuthenticator* auth) 
{ 

} 

void MainWindow::on_finished(QNetworkReply* reply) 
{ 

} 

MainWindow::MainWindow(QWidget *parent) : 
    QMainWindow(parent), 
    ui(new Ui::MainWindow), networkManager(this) 
{ 
    ui->setupUi(this); 
    connect(networkManager, SIGNAL(finished(QNetworkReply*)), 
      this, SLOT(on_finished(QNetworkReply*))); 
    connect(networkManager,SIGNAL(authenticationRequired(QNetworkReply*, QAuthenticator*)), 
      this, SLOT(on_authenticationRequired(QNetworkReply*,QAuthenticator*))); 
} 

MainWindow::~MainWindow() 
{ 
    delete ui; 
} 

void MainWindow::changeEvent(QEvent *e) 
{ 
    QMainWindow::changeEvent(e); 
    switch (e->type()) { 
    case QEvent::LanguageChange: 
     ui->retranslateUi(this); 
     break; 
    default: 
     break; 
    } 
} 

cevap

8

QObject :: bağlamak QObject en işaretçileri bekliyor, sen sadece bağlamak için (... NetworkManager) bağlamak değişen. Normal bir değişken olarak NetworkManager geçiyoruz (& networkManager ...) hile yapmalıdır.

+0

çok teşekkür ederim. –