2014-08-29 3 views
1

QGraphicsView이보기의 너비보다 두 배 넓은 장면으로 설정한다고 상상해보십시오. sceneRect()은 전체 장면 rect를 반환합니다. 스크롤바의 위치와 관련하여 장면의 절반을 나타내는 rect를 얻고 싶습니다.QGraphicsView에 대해 보이는 장면 rect을 얻는 방법

+0

'QAbstractScrollArea :: viewport()'가 필요한 것을 반환합니까? – vahancho

+0

@vahancho, Tomas의 대답과 관련해서는 그렇습니다. –

답변

1

graphicsView->viewport()->rect()으로 뷰포트 직사각형을 가져 와서 graphicsView->mapToScene()으로 장면 공간에 매핑하십시오.

+0

'viewport() -> rect()'가 나에게 더 적절해 보인다. 우리가 이것에 동의하면, 당신은 당신의 대답을 편집 할 수 있습니다. 나는 그것을 받아 들일 것입니다. –

+0

'viewport() -> rect()'이 저에게 효과적입니다. –

0

당신이 정확히 원하는 직사각형 (이것은 당신이하고 싶은 것에 달려있다)은 확실하지 않지만, graphicsView->viewport()->contentsRect() 또는 graphicsView->viewport()->geometry()과 같은 것이 작동해야합니다.