スポンサーリンク
GLUTでのマウス操作一覧です。
#include <Windows.h> #include <gl/GL.h> #include <gl/freeglut.h> #pragma comment(lib,"opengl32.lib") #pragma comment(lib,"freeglut.lib") void disp(void) {} void mouse(int button, int state, int x, int y) { if (button == GLUT_LEFT_BUTTON && state == GLUT_DOWN) { printf("left button down\n");//左ボタンダウン } if (button == GLUT_LEFT_BUTTON && state == GLUT_UP) { printf("left button up\n");//左ボタンアップ } if (button == GLUT_RIGHT_BUTTON && state == GLUT_DOWN) { printf("right button down\n");//右ボタンダウン } if (button == GLUT_RIGHT_BUTTON && state == GLUT_UP) { printf("right button up\n");//右ボタンアップ } if (button == GLUT_MIDDLE_BUTTON && state == GLUT_DOWN) { printf("middle button down\n");//中ボタンダウン } if (button == GLUT_MIDDLE_BUTTON && state == GLUT_UP) { printf("middle button up\n");//中ボタンアップ } } //ドラッグ void motion(int x, int y) { printf("drag ... %d %d\n",x,y); } //ホイール void mouseWheel(int button, int dir, int x, int y) { if (dir > 0) { printf("wheel up\n"); } else { printf("wheel down\n"); } return; } int main(int argc,char** argv) { glutInit(&argc, argv); glutInitWindowPosition(100, 50); glutInitWindowSize(400, 300); glutInitDisplayMode(GLUT_SINGLE | GLUT_RGBA); glutCreateWindow("mouse demo"); glutDisplayFunc(disp); glutMouseFunc(mouse); glutMotionFunc(motion); glutMouseWheelFunc(mouseWheel); glutMainLoop(); return 0; }