برای این که بتوان تابع موس را فراخوانی کرد در ()main مینویسیم :

glutMouseFunc ( نام تابع );

برای مثال نام تابع را mouse میگذاریم  پس در ()main مینویسیم :

glutMouseFunc (mouse );

تابعی که اکنون تحت نام mouse نوشته میشود 4 پارامتر دارد :

void mouse( int button , int state , int x , int y )

پارامتر اول مشخص می کند که کدام دکمه ماوس فشرده شده یا رها می شود.که خود این پارامتر 3 حالت دارد:

GLUT_LEFT_BUTTON
GLUT_MIDDLE_BUTTON
GLUT_RIGHT_BUTTON

پارامتر دوم وضعیت دکمه ماوس را که فشردن یا رها شدن را مشخص می کند.که  این پارامتر 2 حالت دارد :
GLUT-DOWN 
GLUT-UP
  پارامتر سوم و چهارم هم مختصات موس به پیکسل هستند.

برای چک کردن این که کدام کلید زده شده از یک if استفاده می کنیم که مقادیر bottun , state را چک می کند.



نمونه کد:
void mouse(int button, int state, int x, int y)
{
switch (button)
{
case GLUT_LEFT_BUTTON:
if (state == GLUT_DOWN)
  exit(0); 
}
}