在QGraphicsView中制作2层,可以通过以下步骤实现:
下面是一个示例代码,演示如何在QGraphicsView中制作2层:
from PyQt5.QtWidgets import QApplication, QGraphicsScene, QGraphicsView, QGraphicsRectItem, QGraphicsEllipseItem, QGraphicsTextItem, QGraphicsItemGroup
from PyQt5.QtCore import Qt
import sys
if __name__ == '__main__':
app = QApplication(sys.argv)
# 创建底层图层
scene = QGraphicsScene()
# 创建底层图形项
rect = QGraphicsRectItem(0, 0, 100, 100)
ellipse = QGraphicsEllipseItem(50, 50, 100, 100)
text = QGraphicsTextItem("Bottom Layer")
# 将底层图形项添加到底层图层
scene.addItem(rect)
scene.addItem(ellipse)
scene.addItem(text)
# 创建顶层图层
group = QGraphicsItemGroup()
# 创建顶层图形项
rect2 = QGraphicsRectItem(200, 200, 100, 100)
ellipse2 = QGraphicsEllipseItem(250, 250, 100, 100)
text2 = QGraphicsTextItem("Top Layer")
# 将顶层图形项添加到顶层图层
group.addToGroup(rect2)
group.addToGroup(ellipse2)
group.addToGroup(text2)
# 将顶层图层添加到底层图层
scene.addItem(group)
# 创建QGraphicsView对象,并设置场景
view = QGraphicsView(scene)
# 设置视口大小和位置
view.setSceneRect(0, 0, 400, 400)
# 显示视图
view.show()
sys.exit(app.exec_())
在这个示例中,底层图层包含一个矩形、一个椭圆和一个文本项,顶层图层包含一个矩形、一个椭圆和一个文本项。通过将顶层图层添加到底层图层中,可以实现在QGraphicsView中制作2层。
请注意,这只是一个简单的示例,你可以根据自己的需求添加更多的图形项和图层。另外,你还可以使用QGraphicsItem的各种方法和属性来对图形项进行进一步的操作和定制。
领取专属 10元无门槛券
手把手带您无忧上云