나는 무엇보다도 컨트롤 플로우 그래프와 같은 약간의 항목 들간에 연결을 생성해야하는 QGraphicsView
유래 위젯을 생성하고 있습니다. 그러나 나는 '그릴'나는 두 가지 접근 시도했습니다드래그가 발생하는 동안 QGraphicsItem 업데이트하기
연결하는 방법 구현하는 데 문제가 있어요 : 소스 객체의 mouseMoveEvent(..)
이 발사 될 때 QGraphicsLineItem
유래 객체를 생성
- 를, 각과를 업데이트 후속 이동. 선이 그려지고 성공적으로 업데이트되지만 궁극적으로 이것은 마우스를 움직이면 마우스가 이벤트 이동을 처리하기 만하므로 다른 객체의 hoverEnterEvent (..)/hoverMoveEvent (..)/hoverMoveEvent 기타 메서드가 호출되지 않습니다 (연결을 완료하는 데 필요합니다).
- 두 객체 간의 연결을 생성하기 위해 mouseMoveEvent (..)에
QDrag
인스턴스를 생성하면 두 객체가 일단 연결을 끊을 수 있지만 궁극적으로QDrag::exec()
호출은 다른 객체에 대한 수단을 제공하지 않기 때문에 작동하지 않습니다 마우스가 움직이는 것을 통보 - 그리기 연결을 업데이트 할 수 없습니다.
정말 완벽한 두 세계에서 QDrag::exec()
호출은 다른 종류의 마우스 이동 알림을 허용하므로 연결을 나타내는 개체를 업데이트 할 수 있습니다. 아무도 제안이 있습니까?
이와 유사합니다. question.
그것은 아마 당신이 원하는,하지만 Qt는의도 장면의 예를 거기에 정확히하지 않습니다 -
(http://www.projexsoftware.com/software/orbiter가 어떻게 생겼는지의 예는 인공 위성 응용 프로그램에 테이블 뷰입니다) qt-project.org/doc/qt-4.8/graphicsview-diagramscene.html –