如何使用 C++ 为我在 Qt Creator 上绘制的心形形状上色
how to color a heart-shaped form I drew on Qt creator using c++
我有个小问题。我正在使用 qt creator 在 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);`
那么,我该怎么办?谢谢!!
你可以这样做:
painter.fillRect(topLeftPoint.x(), topLeftPoint.y(), width, height, Qt::red);
您需要找出表单的宽度和高度。
由于您的表单不是矩形(您应该在问题中提到这一点,因为这是一个非常重要的细节),您可以使用 QPainterPath
to define your points and then fill this path with QPainter::fillPath
. Use QPolygonF
to define your shape and then add this polygon to the QPainterPath
by using the QPainterPath::addPolygon
方法。
我有个小问题。我正在使用 qt creator 在 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);`
那么,我该怎么办?谢谢!!
你可以这样做:
painter.fillRect(topLeftPoint.x(), topLeftPoint.y(), width, height, Qt::red);
您需要找出表单的宽度和高度。
由于您的表单不是矩形(您应该在问题中提到这一点,因为这是一个非常重要的细节),您可以使用 QPainterPath
to define your points and then fill this path with QPainter::fillPath
. Use QPolygonF
to define your shape and then add this polygon to the QPainterPath
by using the QPainterPath::addPolygon
方法。