Имеется 2 класса. В одном формируется главное окно, а в другом производится рисование на виджете.
Код рисования:
#include "picture.h"
#include <QtGui>
Picture::Picture(QWidget* wid):
QWidget(wid)
{
}
void Picture::paintEvent(QPaintEvent *){
QPainter paint;
paint.begin(this);
QPixmap picture("E:\\Projects\\Qt\\Graphics_BLA\\1.jpg");
paint.drawPixmap(0,0,picture);
paint.end();
resize(550, 550);
}
Код главного виджета:
#include "graphics.h"
#include <QtGui>
#include "picture.h"
Graphics::Graphics(QWidget *wid):
QWidget(wid),
pribSpeed(0),
vertSpeed(0),
bortSpeed(0),
biomHeight(0),
geomHeight(0)
{
QHBoxLayout* mainLay=new QHBoxLayout; //Основной компановщик
QHBoxLayout* groupLay=new QHBoxLayout; //Компановщик для отображения групп
//...
Picture pict;
QGroupBox* pictBox=new QGroupBox("Отображение");
pictBox->setFixedSize(550, 550);
QHBoxLayout* pictLay=new QHBoxLayout;
pictLay->addWidget(&pict);
pictBox->setLayout(pictLay);
groupLay->addWidget(pictBox);
//================================================
setWindowTitle("Телеметрия");
mainLay->addLayout(groupLay);
setLayout(mainLay);
В итоге получаю такое окно (скриншот ниже).
Если создать только объект класса Picture и поместить его в другой виджет, без компановок и прочего, рисунок отображается.
Так где же здесь недочёт? Если нужно, могу весь код основного класса кинуть.