目次

005 マウス入力

概要

マウスをクリックした時、話した時、動かしている時の状態を取得します。

ソースコード

#include <GL/freeglut.h>
 
// マウス入力用コールバック(押した時、話した時)
void mouseCallBack( int _button, int _state, int _x, int _y )
{
	// ボタンの種類。
	switch( _button )
	{
	case GLUT_LEFT_BUTTON:
		{
			switch( _state )
			{
			case GLUT_DOWN:
			case GLUT_UP:
				break;
			}
		}
		break;
	case GLUT_MIDDLE_BUTTON:
		{
			switch( _state )
			{
			case GLUT_DOWN:
			case GLUT_UP:
				break;
			}
		}
		break;
	case GLUT_RIGHT_BUTTON:
		{
			switch( _state )
			{
			case GLUT_DOWN:
			case GLUT_UP:
				break;
			}
		}
		break;
	}
}
 
// マウス入力用コールバック(ドラッグ時)
void motionCallBack( int _x, int _y )
{
}
 
// メイン
int main( int argc, char *argv[] )
{
	// GLUTの初期化
	glutInit( &argc, argv );
 
	// ウィンドウの位置を指定。
	glutInitWindowPosition( 100, 100 );
 
	// ウインドウサイズ指定
	glutInitWindowSize( 640, 480 );
 
	// ウインドウの表示モード指定
	glutInitDisplayMode( GLUT_DOUBLE | GLUT_RGBA );
 
	// ウインドウ生成
	glutCreateWindow( argv[0] );
 
	// 画面の初期色設定。
	glClearColor( 1.0, 1.0, 1.0, 1.0 );
 
	// コールバック関数の登録。
	glutMouseFunc( mouseCallBack );		// マウスクリック。
	glutMotionFunc( motionCallBack );	// マウスドラッグ。
 
	// メインループ
	glutMainLoop();
 
	return 0;
}