windows程式設計筆記3

來源:互聯網
上載者:User
1.iMouse = GetSystemMetrics(SM_MOUSEPRESENT);//檢查滑鼠是否安裝            cButtons = GetSystemMetrics(SM_CMOUSEBUTTONS);///檢查滑鼠鍵個數            wdnclass.hCursor = LoadCursor(NULL, IDC_ARROW);//指定視窗的預設游標         2.滑鼠事件中lParam值包含了滑鼠位置。            x = LOWORD(lParam);            y = HIWORD(lParam);            wParam值指示滑鼠鍵及Shift及Ctrl鍵狀態。            wParam&MK_SHIFT !=0 //說明按滑鼠鍵時Shift鍵也按下了。         3.希望視窗接受到雙擊事件,需要設定視窗風格。            wndclass.style = CS_DBLCLKS;          4.非客戶區滑鼠訊息。            NC not client,有此標記的大多為非客戶區訊息,如NCPAINT等。            wParam、lParam與客戶區滑鼠訊息有區別。            wParam指明移動或者單擊滑鼠鍵的非客戶區位置,WINUSER.h中以HT開頭的標誌符。            lParam高、低位分別表示y、x座標,注意是螢幕的而不像客戶區內訊息的是客戶區座標,使用時需要裝換。            ScreenToClient(hwnd,&pt);            ClientToScreen(hwnd,&pt);         5.WM_NCHITTEST            非客戶區點擊測試,此訊息優先於所有其他的客戶區和非客戶區滑鼠訊息。其中lParam含有滑鼠x、y值,wParam沒有實際意義。對此訊息的操作可以屏蔽所有滑鼠訊息,很強大。         6.Windows使用WM_NCHITTEST訊息產生所有其他滑鼠訊息。         7.滑鼠游標的操作               滑鼠游標有個顯示計數,通過ShowCursor(TRUE)增加,通過ShowCursor(FALSE)減少。GetCursorPos(&pt)擷取游標位置。SetCursorPos(x,y)設定位置。         8.GetWindowLong(hwnd,GWL_HINSTANCE);//擷取視窗的hinstance         9.GetCapture ReleaseCapture。擷取、釋放滑鼠,即使滑鼠不在當前視窗內。ps:滑鼠操作是當前Windows最為常用的操作之一,使用較為頻繁,但是不難,較易理解。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.