main.cpp
#include <iostream>
#include <QtWidgets/QApplication>
#include "MainWindow.h"
int main(int argc,char*argv[])
{
QApplication a(argc, argv);
MainWindow mw;
return a.exec();
}
MainWindow.h
#pragma once
#include <QtWidgets/qmainwindow.h>
#include <QtGui/qpicture.h>
#include <QtGui/qimage.h>
#include <QtGui/qpainter.h>
#pragma comment(lib,"Qt5Core.lib")
#pragma comment(lib,"Qt5Widgets.lib")
#pragma comment(lib,"Qt5Gui.lib")
namespace Ui {
class MainWindow;
}
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
explicit MainWindow(QWidget* parent = 0);
~MainWindow();
protected:
void paintEvent(QPaintEvent*); // пееопределение виртуальной функции
private:
Ui::MainWindow* ui;
};
MainWindow.cpp
#include "MainWindow.h"
void MainWindow::paintEvent(QPaintEvent*)
{
QImage img("sea.png"); // загружаем картинку
QPainter painter(this); // определяем объект painter, который обеспечивает рисование
painter.drawImage(0, 0, img.scaled(this->size())); // рисуем наше изображение от 0,0 и растягиваем по всему виджету
}
Выдает ошибку
Ошибка LNK2001 неразрешенный внешний символ "public: virtual __cdecl MainWindow::~MainWindow(void)" (??1MainWindow@@UEAA@XZ).
и
Ошибка LNK2001 неразрешенный внешний символ "public: __cdecl MainWindow::MainWindow(class QWidget *)" (??0MainWindow@@QEAA@PEAVQWidget@@@Z).