2011-09-07 4 views
2

QGraphicsView에 하나의 문자 (QGraphicsTextItem)를 배치하려는 경우, 지정된 좌표의 중간에 표시 할 텍스트를 설정할 수있는 방법이 있습니까? QGraphicsTextItem.setPos(x,y)을 사용하면 (x, y)가 왼쪽 상단으로 처리됩니다. 그래도 여전히 QGraphicsScene의 왼쪽 상단을 (0, 0)으로 유지하고 싶습니다.PyQt에서 QGraphicsTextItem의 원점을 설정하십시오.

답변

1

나는 당신이, 배 주위 y 좌표를 중심 것처럼 보이게하기 위해 QGraphicsTextItem의 위치를 ​​이동 한 다음 편지의 높이와 너비를 계산하기 위해 QGraphicsTextItem의 boundingRect 방법을 사용 할 수 있어야한다 생각합니다. 이 같은 매끄러운 :이 도움이

QGraphicsTextItem* textItem0 = new QGraphicsTextItem("Test Text Item", 0, scene); 
int x = x - textItem0->boundingRect().width()/2; 
int y = y - textItem0->boundingRect().height()/2; 
textItem0->setPos(x, y); 

희망, 그것은 수평으로 약 1 픽셀을의

+0

과 관련,하지만 그건 아마 글꼴의 문제입니다. 감사. –

관련 문제