在自定义的widget中显示图片。

思路:定义类MyWidget,public 继承自QWidget,然后实现 void paintEvent(QPaintEvent *)。

新建Empty qmake project,命名为DisplayImages,添加三个文件 mywidget.h  mywidget.cpp  main.cpp

mywidget.h

#ifndef MYWIDGET_H
#define MYWIDGET_H #include <QWidget>
class MyWidget : public QWidget
{
public:
MyWidget(QWidget *parent = ); protected:
void paintEvent(QPaintEvent *event);
}; #endif // MYWIDGET_H

mywidget.cpp

#include "mywidget.h"
#include <QPainter>
#include <QImage> MyWidget::MyWidget(QWidget *parent)
: QWidget(parent)
{
setWindowTitle("Display Images");
} void MyWidget::paintEvent(QPaintEvent *event)
{
Q_UNUSED(event);
QPainter painter(this);
QImage image("../DisPlayImages/dot.png");
// Q_ASSERT(!image.isNull());
painter.drawImage(, , image);
painter.drawImage(, , image);
}

main.cpp

#include <QApplication>
#include "mywidget.h" int main(int argc, char *argv[])
{
QApplication app(argc, argv);
MyWidget widget;
widget.show();
return app.exec();
}
05-01 22:28