2017-04-09 60 views
0

我是QT新手,所以在开始的时候我请理解。 我的问题是,我想绘制任何包含在QT窗体中的窗体。因此,例如我曾overrided paintEvent方法是这样的:在窗体小部件中绘制窗体QT

void MainWindow::paintEvent(QPaintEvent *e) 
{ 
    QPainter p; 
    p.begin(this); 
    p.setBrush(Qt::red); 
    p.drawRect(10, 10, 100, 100); 
    p.end(); 
} 

而且什么都好,红色矩形出现在表单上。然后,我添加例如QWidget某处我的形式,我想这个小部件内绘制了这种方式:

void MainWindow::paintEvent(QPaintEvent *e) 
{ 
    QPainter p; 
    p.begin(ui->widget); 
    p.setBrush(Qt::red); 
    p.drawRect(10, 10, 100, 100); 
    p.end(); 
} 

但没有出现这个小工具里面。这可能吗?或者也许有其他方法来实现我的目标?对我来说最重要的是,我想在我的表单上有一个仅用于绘制内容的小地方。

非常感谢你的理解与任何帮助:)

+1

的可能的复制[?如何与QPainter的借鉴,从一组中的QMainWindow部件的特定部件(http://stackoverflow.com/questions/42663880 /如何对拉伸带-的QPainter上-A-特定微件从-A基团的的小部件合qmainw) –

回答