你可以使用 QPainter 类的 drawRect() 方法来绘制正方形。以下是一个简单的示例代码,演示如何使用 QPainter 绘制一个红色的正方形:
#include <QPainter>
#include <QPen>
#include <QBrush>
#include <QWidget>
class MyWidget : public QWidget {
public:
void paintEvent(QPaintEvent *event) override {
QPainter painter(this);
// 设置画笔和刷子颜色
painter.setPen(QPen(Qt::red, 2));
painter.setBrush(QBrush(Qt::red));
// 绘制正方形
int side = 100; // 正方形边长
int x = (width() - side) / 2; // 计算左上角坐标 x
int y = (height() - side) / 2; // 计算左上角坐标 y
painter.drawRect(x, y, side, side);
}
};
int main(int argc, char *argv[]) {
QApplication app(argc, argv);
MyWidget widget;
widget.resize(400, 400);
widget.show();
return app.exec();
}
在这个示例中,我们创建了一个自定义的 QWidget 子类 MyWidget,并重写了它的 paintEvent() 方法来执行绘图操作。在 paintEvent() 方法中,我们使用 QPainter 对象设置画笔和刷子颜色,并调用 drawRect() 方法来绘制一个红色的正方形。最后,在主函数中创建 MyWidget 对象并显示出来。
请注意,这只是一个简单的示例代码,实际项目中可能需要根据具体需求进行更复杂的绘图操作。
内容由零声教学AI助手提供,问题来源于学员提问