QGraphicsTextItem
을 자식으로 가지고있는 QGraphicsItem
요소 (하위 클래스는 QGraphicsItem
)가 있습니다.QGraphicsItem을 무한 반복 칠하는 것을 피하십시오
의 메서드를 무한히 호출하는 것이 문제입니다.
void rectangle_element::paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget)
{
painter->drawRoundedRect(-10, -10, 80, 40, 5, 5);
painter->drawStaticText(-10, -10, QStaticText("some text"));
text_item->setPlainText("more text");
}
내가 QGraphicsItem::CacheMode::NoCache
이외의 플래그 setCacheMode
을 사용할 수 없습니다 : 여기
QGraphicsTextItem
내
QGraphicsItem
요소에서 페인트 방법입니다.
Qt 5.6을 사용하고 있습니다.
UPDATE :
text_item
는 클래스의 멤버이며이 초기화 목록에 초기화됩니다.
페인트 할 때마다 왜 아이를 만듭니 까? Constuctor에서 자식 만들기 – Fabio
@Fabio - 질문을 업데이트했습니다. 'QGraphicsTextItem'은 calss의 멤버입니다. – mtb
다시 말하지만, 항목을 칠 때마다 왜 하위 텍스트를 설정해야합니까? – Fabio