2011-01-28 3 views
0

Qit 물건을 QImage에 렌더링 한 다음 화면에 그려서 내 자신의 3D 응용 프로그램 화면에 Qt GUI 요소를 렌더링합니다. 입력을 QGraphicsScene으로 리디렉션하지만 모든 것이 작동하는 것은 아닙니다. QWebView에서 QLineEdit 또는 웹 페이지 요소를 클릭하는 동안 버튼을 클릭하면 제대로 작동합니다. 그러나 doubleclick이 작동하는 것 같습니다. 이중 클릭 된 QLineEdit은 일부 텍스트를 선택하지만 여전히 포커스를 얻지는 못합니다. 무엇이 이것을 일으킬 수 있습니까?문제 QLineEdit가 QGraphicsScene으로 렌더링 됨

+0

QGraphicsProxyWidget's를 사용하여이 컨트롤을 래핑합니까? –

+0

흠, 아니에요. 그것을 조사하려고! – marrat

+0

http://doc.qt.nokia.com/latest/qgraphicsscene.html#addWidget을 참조하십시오. –

답변

0

또한 키보드 이벤트 전송을 구현했습니다. QLineEdit에서 일부 텍스트를 선택하더라도 (QGraphicsScene :: keyPressEvent()/QGraphicsScene :: keyReleaseEvent() 또는 QApplication :: sendEvent) 텍스트를 컨트롤에 입력하지 않아도 텍스트가 덮어 써 져야합니다.). QLineEdit 때문에 그것을 클릭하여 포커스를 얻지 못하기 때문에 의심 스럽지만, 왜 초점을 맞추지 찾을 수 없습니다. 모든 이벤트는 QGraphicsScene의 서브 클래스로 보내집니다.

1

나는 똑같은 문제가있었습니다. 내가 가진 것처럼 보였습니다

QGraphicsView.keyPressEvent(self, keyEvent) 

내 graphicsView에 구현되었습니다. 이벤트를 상속 체인으로 재전송해야했습니다.

+2

더 설명 할 수 있습니까? – marrat