我该如何绘制矩形?
我试过两种不同的方式;
void MyWidget::paintEvent(QPaintEvent *)
{
QPainter painter(this);
painter.setRenderHint(QPainter::Antialiasing);
painter.setPen(Qt::black);
QRect rect = QRect(290, 20, 70, 40);
painter.drawText(rect, Qt::AlignCenter,
"Data");
painter.drawRect(rect);
}
Run Code Online (Sandbox Code Playgroud)
哪个工作正常(即使参数未命名也未使用),但我不想使用QPaintEvent*我没用它.
所以我尝试重命名我的功能;
void MyWidget::draw()
{
QPainter painter(this);
painter.setRenderHint(QPainter::Antialiasing);
painter.setPen(Qt::black);
QRect rect = QRect(290, 20, 70, 40);
painter.drawText(rect, Qt::AlignCenter,
"Data");
painter.drawRect(rect);
}
Run Code Online (Sandbox Code Playgroud)
这不会显示任何内容(但没有错误).
如果我不使用QPaintEvent*,为什么它不起作用?