3
QGraphicsItem을 현재 화면 중앙에 정확하게 추가하려고합니다.
QGraphicsScene이 매우 커서 (10k X 10K) QGraphicsView에서 스크롤 막대를 완전히 표시 할 수 없습니다.
내 현재 화면의 사각형을 반환하는 함수를 찾을 수 없습니다. 모든 QGraphicsScene 및 QGraphicsView 함수에서 검색했습니다.
장면 rect를 반환하는 함수가 있습니다 (rect 10k X 10k를 반환하지만 쓸모가 없습니다). 마우스 위치를 반환하는 함수가 있지만 마우스를 움직여서 메뉴를 클릭하면 마우스가 더 이상 필요하지 않습니다. 장면 안에 있으면 항목이 보이는 공간 밖에서 생성됩니다 ...
대단히 고마워요.
인사말 및 답변 해 주셔서 감사합니다. 불행히도 작동하지 않습니다. graphicsView.viewport(). pos() 및 graphicsView.viewport() -> rect(). center()를 시도했는데 장면에 항목을 배치해야하지만 그 위치에 넣지는 않습니다. 센터. 나는 setTransformationAnchor (QGraphicsView.AnchorUnderMouse) 및 setResizeAnchor (QGraphicsView.AnchorUnderMouse)를 사용하고 있습니다.하지만 AnchorViewCenter도 시도했는데 여전히 위치를 지정하지 않습니다. –
@Cristi Constantin : graphicsView.mapToScene (graphicsView. viewport() -> rect(). center())를 사용하여 현재 화면의 중심점을 가져 오려면 작업을 수행해야합니다. – zkunov
감사합니다. 그것이 해결책이었습니다. 잘못하고있었습니다. –