QPainter를 사용하여 그려지는 QWidget에 도형이 있습니다. 특정 좌표에서 특정 타원을 삭제할 수있는 방법이 있습니까?qpainter를 사용하여 만든 qwidget의 타원 삭제
감사합니다.
QPainter를 사용하여 그려지는 QWidget에 도형이 있습니다. 특정 좌표에서 특정 타원을 삭제할 수있는 방법이 있습니까?qpainter를 사용하여 만든 qwidget의 타원 삭제
감사합니다.
다음 번에 페인트하지 마십시오.
각 페인트 이벤트에서 paintEvent() 구현은 전체 위젯 또는 QPaintEvent에 지정된 rect/region을 "처음부터"그립니다. 따라서 각 paintEvent는 이전 페인트의 내용이 아닌 빈 캔버스에서 시작됩니다. 따라서, 지우고 싶다면 update()를 통해 다시 페인트를 시작한 다음 그려야 할 요소를 생략하면됩니다.
Vinod Paul은 다음과 같이 말합니다 : QGraphicsView는 이러한 많은 요소를 관리해야 할 경우를 대비하여 좋은 옵션 일 수 있습니다.
QGraphicsView를 사용했지만 감사합니다. – abumusamq
QGraphicsItem을 사용하면 더 쉽게 만들 수 있습니다. –
QGraphics 프레임 워크를 사용하면 적어도 하나 이상의 위젯을 다시 작성해야 할 가능성이 있습니다. 질문 : 페인트 방법 로직을 변경하고 위젯의 다시 그리기를 예약하십시오. – divanov