我有点问题。我正在使用qt创建者在c ++中进行视频游戏,我想填写一张我用红色绘制的表格。我为这条线着色但我无法找到如何填写所有表格。在qt的文档中,它解释了如何填充矩形,以及如何为线条着色,但我没有找到任何关于如何填充我创建的表单的内容。以下是绘制表单的代码:
painter.setPen(Qt::red);
QLine line = QLine(leftPoint, bottomCenterPoint);
painter.drawLine(line);
line = QLine(bottomCenterPoint, rightPoint);
painter.drawLine(line);
line = QLine(rightPoint, topRightPoint);
painter.drawLine(line);
line = QLine(topRightPoint, centerPoint);
painter.drawLine(line);
line = QLine(centerPoint, topLeftPoint);
painter.drawLine(line);
line = QLine(topLeftPoint, leftPoint);
painter.drawLine(line);`
那么,我该怎么办?谢谢!
答案 0 :(得分:1)
您可以这样做:
painter.fillRect(topLeftPoint.x(), topLeftPoint.y(), width, height, Qt::red);
您需要找出表单的宽度和高度。
由于您的表单形状不像矩形(您应该在问题中提及这是一个非常重要的细节),您可以使用QPainterPath
来定义您的点,然后使用{{填充此路径3}}。使用QPainter::fillPath
定义您的形状,然后使用QPolygonF
方法将此多边形添加到QPainterPath
。