Witam

Potrzebuje, stowrzyć okno główne MainWindow,, w którym będzie jakiś label, zawierający pixmap, później będę musiał na ten pixmap nanosić różne kształty. Czyli pytanie brzmi jak rysować po istniejącym labelu, w którym znajduje się już jakiś obraz?
Klasa MainWindow

class Rec;
class Label;
class MW : public QMainWindow
{
    Q_OBJECT
public:
    explicit MW();
    QWidget *wg;
    QGridLayout *gl;
    QPushButton *klik; // narazie bezużyteczny
    QPushButton *kliku; // j.w
    Label *lab; // to tło, po którym cos będę rysyował inną klasą
    Rec *rec; // a to obiekt, który chce narysować na tle obiektu Label;

signals:

public slots:

};

MW::MW()
{
    klik = new QPushButton("klik" , this);
    kliku = new QPushButton("klikuuuu" , this);

    wg = new QWidget(this);
    lab = new Label(wg);

    this->setCentralWidget(wg);
    gl = new QGridLayout();
    gl->addWidget(klik);
    gl->addWidget(kliku);
    gl->addWidget(lab);
    wg->setLayout(gl);
    rec = new Rec(lab->pix , lab);
    lab->repaint(); // nie wiem czy to dziaa


}

Klasa Label to klasa, która ma stanowić tło do rysowania po nim, "siedzi" w Mainwindow.

class Label : public QLabel
{
    Q_OBJECT
public:
    explicit Label(QWidget *parent = 0);
    QPixmap *pix;

signals:

public slots:

};

Label::Label(QWidget *parent) :
    QLabel(parent)
{
//laduje do labela jakis obraz
    pix = new QPixmap("C:/b.png");
    this->setPixmap(*pix);
    this->setBackgroundRole(QPalette::Base);
}

i klasa konkretnego kształtu

class Rec : public QWidget
{
    Q_OBJECT
public:
    explicit Rec(QPixmap *lab , QLabel *img , QWidget *parent = 0);
    void paintEvent(QPaintEvent *e);
    QPixmap *parent; // wskaznik na tlo 
    QLabel *img ; // wskaznik na obiekt ktory ma tlo

signals:

public slots:

};

Rec::Rec(QPixmap *lab, QLabel*img , QWidget *parent) :
    QWidget(parent) , parent(lab) , img(img)
{
}

void Rec::paintEvent(QPaintEvent *e)
{
// no i proboje cos narysowac na tle
    QImage imgg(parent->toImage());
    QPainter painter(&imgg);
    painter.setPen(Qt::blue);
    painter.setFont(QFont("Arial", 70));
    painter.drawText(rect(), Qt::AlignCenter, "Qt");
    img->setPixmap(QPixmap::fromImage(imgg));

}

edit: problem rozwiązany. Sprawa banalna. Wystarczyło dodać rodzica do klasy Rec, którym był centralwidget w mainwindow. Proszę temat zostawić, być może będę miał pytanie pokrewne.