2010-06-27 3 views
2

파이썬에서 저주 모듈에서 마우스 클릭 이벤트를 얻는 방법을 찾으려고합니다. 파이썬 저주 getmouse 기능?

나는 http://docs.python.org/library/curses.html에 문서를 읽고는, 그러나이 "if 문"트리거 만나지 것을
c == curses.getch() 
if(c == curses.KEY_MOUSE): 
    curses.getmouse() 
    ... 

을 제안 ... 그리고 나는 외부의 getmouse() 함수를 이동하려고하는 경우 "if 문"은 마우스 정보를 반환하도록 강제합니다.

(devid,x,y,z,bstate) = curses.getmouse() 
_curses.error: getmouse() returned ERR 

다른 생각은 없습니까?

답변

5

mousemask 함수를 사용하여 마우스 이벤트보고 기능을 활성화하고 반환 값을 확인하여 실제로 일부 마우스 이벤트를보고 할 수 있는지 확인 했습니까? 터미널 (또는 에뮬레이터 프로그램, 최근에는 ;-)에 따라 마우스 이벤트보고가 전체 또는 부분적으로 가능할 수도 있고 불가능할 수도 있습니다. 어쨌든, curses (파이썬뿐만 아니라 curses의 일반적인 아이디어 ;-)에서 기본적으로 비활성화되어 있으므로 mousemask 호출을 사용하여 명시 적으로 활성화 할 때까지 그리고 그럴 때까지.

+0

mousemask 기능을 활성화하면 예상대로 작동합니다. 회신 해 주셔서 감사합니다. – Patrick

+0

@ 패트릭, 천만에요 - 도움이되어 기쁘다! –