2012-07-16 3 views
4

나는 간단 스킨으로 마우스 드래그 & 드롭을 테스트하려고합니다 : mousePress + mouseMove + mouseRelease. 그러나 그것은 효과가 없습니다.QTest : 드래그 & 드롭을 테스트 할 수 있습니까?

qtest 소스를 조사한 결과 해당 이동 이벤트는 주 디스패처 processEvent()를 통해 테스트되었습니다. 또한 나는 Qt는 버그 추적기에 몇 가지 버그를 발견 1, 그래서 2

을, 내 생각, 그것은 드래그에게 안정적인 최신 QT4에서 & 드롭을 테스트하는 것은 불가능하다고. 이걸로 성공 스토리를 가진 사람이 있습니까?

답변

0

QTest 마우스 기능을 통해 드래그 앤 드롭을 시뮬레이션 한 행운이 없었으며 digia says QT4에 기능을 추가하지 않았습니다. 다음과 같은 기능을 사용

mime_data = widget_model.mimeData(indexes) 

또는

mime_data = QMimeData() 
mime_data.setText(widget.text()) 

: 당신의 mime_data을 만들

를 같은 것을 : 나는 위의 링크에서 제안 된 것과 유사한 방법을 통해 테스트를 드롭/드래그를 구현 이 데이터를 삭제하려면 :

def dropOnto(self, widget, mime_data): 
    action = Qt.CopyAction|Qt.MoveAction 
    pt = widget.rect().center() 
    drag_drop = QDropEvent(pt, action, mime_data, Qt.LeftButton, Qt.NoModifier) 
    drag_drop.acceptProposedAction() 
    widget.dropEvent(drag_drop) 
관련 문제