[译]GLUT教程 - 键盘高级特性
Lighthouse3d.com >> GLUT Tutorial >> Input >>?Advanced Keyboard
?
本節我們會介紹另外4個處理鍵盤事件的函數.這些函數手把手的把我們從處理自動重復輸入按鍵的問題中釋放.
第一個函數允許我們關閉鍵盤自動重復輸入.原型如下:
int glutSetKeyRepeat(int repeatMode);
repeatMode - 開啟,關閉和恢復自動重復輸入模式.可選值如下:
GLUT_KEY_REPEAT_OFF – 關閉自動重復輸入模式
GLUT_KEY_REPEAT_ON – 開啟自動重復輸入模式
GLUT_KEY_REPEAT_DEFAULT – 重置為默認值
?
注意,該函數是全局的,該設置會影響所有窗體,不只包括我們創建的窗體.所以當使用完該函數后,最好用重置到用之前的狀態.
GLUT提供一個安全途徑來禁用鍵盤按鍵重復輸入的回調函數.這讓我們安全的忽略鍵盤重復,并且不會影響操作系統的其它應用.原型如下:
int glutIgnoreKeyRepeat(int repeatMode);
repeatMode – 0是禁止自動重復輸入,正值是允許.
?
有的時候我們想要停止接收按鍵重復發生時的回調.另外當你想要在按鍵釋放時做處理,GLUT提供了兩個函數來處理按鍵釋放事件.
void glutKeyboardUpFunc(void (*func)(unsigned char key,int x,int y));
void glutSpecialUpFunc(void (*func)(int key,int x, int y));
func – 綁定的回調函數的名字
?
該綁定函數的參數定義跟上一節的鍵盤事件一樣.
?
?
轉載于:https://www.cnblogs.com/live41/p/3387826.html
總結
以上是生活随笔為你收集整理的[译]GLUT教程 - 键盘高级特性的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 一个测试工程师面试官的真实分享!个人超赞
- 下一篇: 数据的封装