2010-03-24 4 views
2

QStackedWidget을 사용하여 뷰를 전환하면보기간에 이동할 수 있습니다.Qt의 누적 위젯에서 위젯을 삭제하는 방법

위젯이 필요없는 일부 시나리오에서는 문제가 발생하지만 완전히 제거하려고합니다.

QStackedWidget 위젯을 제거하는 기능을 제공하지만 여전히 위젯의 소유권이 있으므로 위젯이 숨겨집니다.

나는 이런 일이 일어나기를 원하지 않습니다. 삭제 위젯을 호출하면 삭제되어야합니다. 어떻게해야합니까?

+0

스택이나 힙에 있지만 QStackedWidget에 개체를 만들고 있습니까? 질문 제목은 전자를 의미하고, 질문 텍스트는 후자를 의미합니다. –

답변

3

개체를 삭제 한 후 단순히 삭제 해 보았습니까? 즉

+0

고마워 .. 내가 점검 할 것이다 – Naruto

+1

QStackedWidget :: removeWidget의 문서는 혼란 스럽다. 소유권 _does_은 응용 프로그램으로 다시 전송되며 removeWidget을 호출 한 후에 위젯을 삭제하거나 해제하는 것이 옳다. – BCran

0

많은 Qt 개체가 삭제되면 자동으로 제거됩니다. (적어도 QtGraphics API에서는 그런 식으로 작동합니다.) Qt 객체는 삭제 된 신호를 방출하기 때문에 단순히 객체를 삭제하면 제거 될 것입니다.

+0

당신은 멤버 변수 나 로컬 변수를 가지고 있다고 생각합니다.이 경우에는 멤버와 로컬 변수를 자동으로 삭제할 때 동적으로 메모리를 할당 할 것입니다. 또는 수동으로 삭제해야합니까? – Naruto

관련 문제