要在Qt中绘制一个绿色矩形,您需要创建一个自定义的QWidget或QGraphicsView类,在其绘制事件中使用QPainter来绘制形状。
以下是一个简单的示例,演示如何在QWidget中绘制一个绿色矩形:
#include <QWidget>
#include <QPainter>
#include <QApplication>
class DemoWnd : public QWidget
{
public:
DemoWnd(QWidget* parent = nullptr) : QWidget(parent)
{
setFixedSize(600, 400);
}
protected:
void paintEvent(QPaintEvent* event)
{
QPainter painter(this);
painter.setPen(Qt::NoPen);
painter.setBrush(Qt::green);
int tmpX = rect().width() / 4;
int tmpY = rect().height() / 4;
int tmpW = rect().width() / 2;
int tmpH = rect().height() / 2;
painter.drawRect(tmpX, tmpY, tmpW, tmpH);
}
};
int main(int argc, char** argv)
{
QApplication app(argc, argv);
DemoWnd w;
w.show();
return app.exec();
}
在上述示例中,我们创建了一个名为DemoWnd 的自定义QWidget类,重写了paintEvent()函数。在该函数中,我们使用QPainter来绘制一个绿色的矩形,其大小为窗口大小的一半(长度一半,宽度一半),位置为窗口的中心。然后我们在主函数中创建了一个CustomWidget对象并显示它。
编译运行上述代码,您将看到一个显示绿色矩形的窗口。
效果展示: