加载图片可以使用QLabel ,但是QLabel不容易实现图像的自由缩放,比如放大后就不能放小等。可以使用QWidget来加载图像。具体做法就是,从QWidget派生一个类ShowWidget,重载ShowWidget中的paintEvent方法,在paintEvent中使用QPainter 来显示图片。
showwidget.h
#ifndef SHOWWIDGET_H
#define SHOWWIDGET_H
#include <QWidget>
#include <qpixmap.h>
#include <qpainter.h>
class ShowWidget : public QWidget
{
Q_OBJECT
public:
ShowWidget(QWidget *parent);
~ShowWidget();
void ShowWidget::paintEvent(QPaintEvent *pEvent);
private:
QPixmap img;
QPainter painter;
};
#endif // SHOWWIDGET_H
showwidget.cpp
#include "showwidget.h"
ShowWidget::ShowWidget(QWidget *parent)
: QWidget(parent)
{
img.load("./0.jpg");
}
ShowWidget::~ShowWidget()
{
}
void ShowWidget::paintEvent(QPaintEv