1

設計クラスからこれを呼び出し、後でレイアウトに追加していますが、関数で常にエラーメッセージが表示されますladeBild(QLabel l, QString s)

    void Levels::erzeugen(Levels *)
{
....

    ladeBild(l01,"l01.png");
    ladeBild(l02,"l02.png");
    ladeBild(l03,"l03.png");
    ladeBild(l04,"l04.png");
    ladeBild(l05,"l05.png");
    ladeBild(l06,"l06.png");
    ladeBild(l07,"l07.png");
    ladeBild(l08,"l08.png");
    ladeBild(l09,"l09.png");
    ladeBild(l10,"l10.png");
    ladeBild(l11,"l11.png");
    ladeBild(l12,"l12.png");
...
}

    void Levels::ladeBild(QLabel l,QString s)
{

    l = new QLabel();
    l.setBackgroundRole(QPalette::Dark);
    l.setAutoFillBackground(true);
    image = new QImage(s);//Muss im debug-Ordner sein!!!
    l.setPixmap(QPixmap::fromImage(*image));
    l.setMaximumHeight(image->height());
    l.setMaximumWidth(image->width());

}

そして、次のエラーメッセージが表示されます(への呼び出しごとにladeBild

In member function 'void Levels::erzeugen(Levels*)': Fehler:no
matching function for call to 'Levels::ladeBild(QLabel*&, const char
[8])' candidates are: void Levels::ladeBild(QLabel, QString) Fehler:no
match for 'operator=' in 'l = (QFlags<Qt::WindowType>(0u), (operator
new(20u), (<statement>, ((QLabel*)<anonymous>))))' candidates are:
QLabel& QLabel::operator=(const QLabel&)`

この問題を解決できません...

4

1 に答える 1

2

Levels::ladeBildが期待QLabelされますが、そうである必要がありますQLabel*

于 2012-09-18T21:34:48.390 に答える