#include <QApplication>
#include <QWidget>
#include <QVBoxLayout>
#include <QGraphicsView>
#include <QGraphicsScene>
#include <QGraphicsEllipseItem>
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
// 创建主窗口widget
QWidget window;
QVBoxLayout layout(&window);
// 创建QGraphicsView和QGraphicsScene
QGraphicsScene scene;
QGraphicsView view(&scene);
// 创建大圆
QGraphicsEllipseItem *bigCircle = new QGraphicsEllipseItem(-50, -50, 100, 100);
bigCircle->setPen(QPen(Qt::blue));
bigCircle->setBrush(Qt::transparent); // 将填充颜色设置为透明
scene.addItem(bigCircle);
// 创建多个小圆
for (int i = 0; i < 5; ++i) {
qreal x = i * 30 - 60;
qreal y = -10 * x * x + 500;
QGraphicsEllipseItem *smallCircle = new QGraphicsEllipseItem(x - 5, y - 5, 10, 10);
smallCircle->setPen(QPen(Qt::red)); // 设置边框颜色为红色
smallCircle->setBrush(Qt::red); // 设置填充颜色为红色
scene.addItem(smallCircle);
}
view.setRenderHint(QPainter::Antialiasing);
// 将QGraphicsView添加到主窗口widget的布局中
layout.addWidget(&view);
window.show();
return app.exec();
}
QGraphicView绘制圆形示例
于 2023-06-14 12:56:01 首次发布