繁体   English   中英

在表格QT上绘制小部件

[英]Draw inside widget on form QT

我是QT的新手,所以一开始我请您谅解。 我的问题是,我想在QT表单中包含任何未婚夫。 因此,例如,我以这种方式覆盖了paintEvent方法:

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();
}

但是此小部件内部未显示任何内容。 这可能吗? 也许还有其他方法可以实现我的目标? 对我来说最重要的是,我想在表单上留出一个很小的空间,该空间仅用于在其中绘制。

非常感谢您的理解和帮助:)

您不能从另一个窗口小部件中绘制一个窗口小部件。 每个小部件都绘制自己,并且仅在其自己的paintEvent()函数内绘制自己。

有关更多详细信息,您应该看一下: 如何在QMainWindow中的一组小部件中的特定小部件上使用QPainter进行绘制?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM