程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> 關於C語言 >> C語言控制台窗口圖形界面編程之八 鼠標事件

C語言控制台窗口圖形界面編程之八 鼠標事件

編輯:關於C語言

上次講的是鍵盤事件,這次我們介紹鼠標事件。下面先介紹下鼠標事件的結構體以及相關信息。

typedef struct _MOUSE_EVENT_RECORD      //鼠標事件結構體    
{    
    COORD dwMousePosition;      //當前鼠標在控制台窗口緩沖區的位置    
    DWORD dwButtonState;        //鼠標按鍵的狀態    
    DWORD dwControlKeyState;    //控制鍵狀態    
    DWORD dwEventFlags;         //鼠標事件類型    
} MOUSE_EVENT_RECORD;    
/*   
其中鼠標按鍵狀態dwButtonState可能的值有   
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~   
FROM_LEFT_1ST_BUTTON_PRESSED        最左邊的鼠標鍵被按下      一般來說就是鼠標左鍵   
FROM_LEFT_2ND_BUTTON_PRESSED        左起第二個鼠標鍵被按下    一般來說是鼠標中鍵,就是滾輪鍵   
FROM_LEFT_3RD_BUTTON_PRESSED        左起第三個鼠標鍵被按下   
FROM_LEFT_4TH_BUTTON_PRESSED        左起第四個鼠標鍵被按下   
RIGHTMOST_BUTTON_PRESSED            最右邊的鼠標鍵被按下      一般來說是鼠標右鍵   
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~   
控制鍵狀態dwControlKeyState與鍵盤事件的一樣   
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~   
ENHANCED_KEY        擴展鍵被按下    
LEFT_ALT_PRESSED    左Alt鍵被按下    
LEFT_CTRL_PRESSED   左Ctrl鍵被按下    
RIGHT_ALT_PRESSED   右Alt鍵被按下    
RIGHT_CTRL_PRESSED  右Ctrl鍵被按下    
NUMLOCK_ON          數字鎖定被打開    
SCROLLLOCK_ON       滾動鎖定被打開    
CAPSLOCK_ON         大寫鎖定被打開    
SHIFT_PRESSED       Shift鍵被按下   
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~   
鼠標事件類型dwEventFlags有以下幾種   
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~   
DOUBLE_CLICK            雙擊,第一擊只作為普通按鍵事件,第二擊才作為雙擊事件   
MOUSE_HWHEELED          水平鼠標滾輪移動   
MOUSE_MOVED             鼠標移動   
MOUSE_WHEELED           垂直鼠標滾輪移動   
0                       當鼠標有鍵被按下或者釋放   
*/

本欄目

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved