3
私は右クリックと左クリックを区別する必要があるので、mouseClickEvent
を再実装しようとしました。 をWavList
に昇格させ、次のコードを書きましたが、エラーが発生しました。Qtウィジェットプロモーション:これらの2つのコードの違いは何ですか?
wavlist.h
#ifndef WAVLIST_H
#define WAVLIST_H
#include <QWidget>
#include <QListView>
#include <QMouseEvent>
#include <QDebug>
class WavList : public QListView
{
Q_OBJECT
public:
explicit WavList(QWidget *parent = 0);
protected:
void mousePressEvent(QMouseEvent* event);
};
#endif // WAVLIST_H
wavlist.cpp
#include "wavlist.h"
WavList::WavList(QWidget *parent) : QWidget(parent)
{
qDebug() << "lol";
}
void WavList::mousePressEvent(QMouseEvent *event)
{
if (event->button() == Qt::RightButton)
{
event->ignore();
}
else
{
QListView::mousePressEvent(event);
}
}
私は、次のエラーました: C2614: 'WavList': illegal member initialization: 'QWidget' is not a base or member
を。
私はこのように私のコードを修正しました。
WavList::WavList(QWidget *parent)
{
this->setParent(parent);
qDebug() << "lol";
}
これは機能しました。私の質問は、違いは何ですか?
答えをありがとう! – Azruine