2010-03-01 4 views
1

OpenGL 응용 프로그램에서 GLUT (freeglut)를 사용하려고하는데 마우스 휠 이벤트에 대한 콜백을 등록해야합니다. 때문에 대한 정보의 부족 :GLUT를 사용한 표준적이고 신뢰할 수있는 마우스보고

api documentation

그러나 매뉴얼 페이지 및이 기능을 모두 상태 같은 일에 대한 API 항목 :

주 나는 상당히 문서화되지 않은 기능을 파고 관리 마우스를 사용하면이 시간에 을 X에서 올바르게 구현할 수 없습니다. 이 함수를 사용하면 응용 프로그램의 이식성이 으로 제한됩니다. 이 기능은 X에서 작동하지만 은 신뢰할 수 없습니다. 휠 이벤트 대신 표준적이고 안정적인 마우스 버튼 보고를 사용하는 것이 좋습니다.

충분하지만이 표준, 신뢰할 수있는 마우스보고는 어떻게 사용합니까? 그리고 어떤 것이 표준인지 어떻게 알 수 있습니까? glutMouseFunc()을 사용하고 4, 5와 같은 버튼 값을 사용하여 스크롤 위, 아래 값을 각각 사용합니까, 1, 2, 3이 왼쪽, 가운데 및 오른쪽 버튼일까요? 이것은 신뢰할 수있는 방법입니까?

보너스 질문 : 'xev'도구가 내 버튼에 대해 다른 값을보고하는 것으로 보입니다. 마우스 버튼에는 xev를 사용하여 1에서 5까지 번호가 매겨 지지만 glut은 0에서 4까지 버튼을보고합니다 (예 : 하나씩). 이게 일반적인가요?

답변

0

답장을 보내지 않은 채로 물어 본지 오래 되었기 때문에 다시 질문 할 수 있다고 생각했습니다.

앞서 언급 한 documentation에서 더 철저하게 읽으면, 내 추측은 실제로 맞는 것 같습니다.

내 생각 엔 :

난 그냥 glutMouseFunc()를 사용하십니까 최대 및 값 아래로 스크롤 4, 5와 같은 버튼 값을 사용하여 각각 [...]?

아직 테스트하지는 않았지만 설명서의 다음 인용문에서 실제로 이것이 의미하는 바를 모았습니다.

당신이 바퀴 콜백을 등록하지 않으면

은, 휠 이벤트는 마우스 버튼으로 을보고됩니다.

관련 문제