我想在一个继承自QScrollArea的类中绘制图片
以下是代码:
class MdiChild : public QScrollArea
{
Q_OBJECT
public:
MdiChild(QWidget *parent = 0);
~MdiChild();
bool save();
bool saveAs();
bool print();
bool loadFile(QString &fileName);
void setPara(int headerOfferset,int pixelPerLine);
QString currentFile(){return curFile;}
void setCurrentFile(QString &fileName);
protected:
void paintEvent ( QPaintEvent * event );
private:
int size;
QString curFile;
QImage *image;
uchar *bits;
QWidget *view;
int headerOffset;
int pixelPerLine;
};
MdiChild::MdiChild(QWidget *parent) : QScrollArea(parent)
{
image = NULL;
size = 0;
view = new QWidget(this);
this->setWidget(view);
this->setWidgetResizable(true);
this->setMinimumSize(300,200);
this->setAttribute(Qt::WA_DeleteOnClose);
}
void MdiChild::paintEvent ( QPaintEvent * event )
{
QPainter painter(view);
painter.drawImage(0,0,*image);
}
如果把paintEvent()函数里的QPainter painter(view) 改成QPainter painter(this->viewport());
一切正常,但是我想要在里面出现滚动条
所以在QScrollArea里加了一个叫做view的widget,现在在这个widget上绘制图片
为什么绘制不出来?