Это простое приложение создает окно размером 800x600, а затем размещает область просмотра размером 100x100 с координатой 0,0
Если я нарисую в сцене два прямоугольника с размером 100,100 (размером 100, 100) и 300, 300 (размером 200x200), я ожидаю, что они оба будут обрезаны портом просмотра.
Вместо этого я вижу все окно с обоими визуализированными прямоугольниками.
Происходит ли автоматическая подгонка представления, о которой я не знаю?
from PyQt6.QtWidgets import QApplication, QMainWindow, QGraphicsView, QGraphicsScene, QGraphicsRectItem, QVBoxLayout, QWidget
from PyQt6.QtCore import Qt, QRectF
import sys
class MainWindow(QMainWindow):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
self.setWindowTitle('QGraphicsView Clipping Example')
self.setGeometry(100, 100, 800, 600)
# Create a central widget and set a layout
central_widget = QWidget()
layout = QVBoxLayout(central_widget)
self.setCentralWidget(central_widget)
# Create a QGraphicsScene
self.scene = QGraphicsScene()
self.scene.setSceneRect(0, 0, 800, 600)
# Create a QGraphicsView with a smaller viewport
self.view = QGraphicsView(self.scene)
self.view.setGeometry(0, 0, 100, 100) # Smaller viewport
self.view.setHorizontalScrollBarPolicy(Qt.ScrollBarPolicy.ScrollBarAlwaysOff)
self.view.setVerticalScrollBarPolicy(Qt.ScrollBarPolicy.ScrollBarAlwaysOff)
layout.addWidget(self.view)
def add_object(self, item):
self.scene.addItem(item)
if __name__ == "__main__":
app = QApplication(sys.argv)
mainWin = MainWindow()
mainWin.show()
# Add a rectangle item to the scene
new_item = QGraphicsRectItem(300, 300, 200, 200)
mainWin.add_object(new_item)
new_item = QGraphicsRectItem(100, 100, 100, 100)
mainWin.add_object(new_item)
sys.exit(app.exec())
Подробнее здесь: https://stackoverflow.com/questions/791 ... le-example
Почему окно просмотра QGraphicsView не обрезает сцену в этом простом примере? ⇐ Python
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Почему в этом простом примере теста BubbleSort Java оказывается быстрее, чем C++?
Anonymous » » в форуме JAVA - 0 Ответы
- 13 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Библиотека Croppie не обрезает то же изображение, что и в окне просмотра
Anonymous » » в форуме Jquery - 0 Ответы
- 24 Просмотры
-
Последнее сообщение Anonymous
-