gpt4 book ai didi

python - 如何在 PyQt 中绘制自定义椭圆形?

转载 作者:行者123 更新时间:2023-12-05 04:44:49 26 4
gpt4 key购买 nike

所以我一直在尝试使用 QGraphicsEllipseItem 制作自定义椭圆形。

阅读 Qt 关于 QGraphicsEllipseItem 的官方文档后,我似乎没有找到如何管理它。

这是自定义的椭圆形:

enter image description here

最佳答案

如果你想实现复杂的形状,那么一个可能的解决方案是使用 QPainterPathItem:

from PyQt5.QtCore import QRectF
from PyQt5.QtGui import QColor, QPainterPath
from PyQt5.QtWidgets import (
QApplication,
QGraphicsPathItem,
QGraphicsScene,
QGraphicsView,
)


def main():
app = QApplication([])

radius = 20
length = 100

square = QRectF(0, 0, 2 * radius, 2 * radius)

path = QPainterPath()
path.moveTo(radius, 0)
path.arcTo(square, 90, 180)
path.lineTo(length, 2 * radius)
square.moveRight(length + 2 * radius)
path.arcTo(square, -90, 180)
path.lineTo(radius, 0)

item = QGraphicsPathItem()
item.setBrush(QColor("red"))
item.setPen(QColor("green"))
item.setPath(path)

scene = QGraphicsScene()
view = QGraphicsView(scene)
scene.addItem(item)
view.show()

app.exec_()


main()

关于python - 如何在 PyQt 中绘制自定义椭圆形?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69249844/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com