視窗過程 處理點選滑鼠左右鍵的訊息(帶注釋)

2022-09-23 17:42:11 字數 1980 閱讀 5956

視窗過程 處理點選滑鼠左右鍵的訊息(帶注釋):當滑鼠左鍵在視窗客戶區被點選時,提示「按擊來自主人的食指」,當滑鼠右鍵在視窗客戶區被點選時,提示「感受到主人中指的力度。windows 的視窗總是基於視窗類來建立的,視窗類同時確定了處理視窗訊息的視窗過程(**函式)。

在建立應用程式視窗之前,必須呼叫 registerclass 函式來註冊視窗類。該函式只需要乙個引數,

即指向 wndclass 視窗類的指標。因為 wndclass 類包含了視窗所擁有的基本屬性。*/

int winapi winmain(hinstance hinstance, hinstance hprevinstance, pstr szcmdline, int icmdshow)

/*createwindow 函式建立乙個重疊式視窗、彈出式視窗或子視窗。它指定視窗類,視窗標題,視窗風格,以及視窗的

初始位置及大小(可選的)。函式也指該視窗的父視窗或所屬視窗(如果存在的話),及視窗的選單。

若要使用除 createwindow 函式支援的風格外的擴充套件風格,則使用 createwindowex 函式代替 createwindow 函式。*/

/*hwnd winapi createwindow(

_in_opt_ lpctstr lpclassname, // 視窗類名稱

_in_opt_ lpctstr lpwindowname, // 視窗標題

_in_ dword dwstyle, // 視窗風格,或稱視窗格式

_in_ int x, // 初始 x 座標

_in_ int y, // 初始 y 座標

_in_ int nwidth, // 初始 x 方向尺寸

_in_ int nheight, // 初始 y 方向尺寸

_in_opt_ hwnd hwndparent, // 父視窗控制代碼

_in_opt_ hmenu hmenu, // 視窗選單控制代碼

_in_opt_ hinstance hinstance, // 程式例項控制代碼

_in_opt_ lpvoid lpparam // 建立引數

);*/

hwnd = createwindow(szappname, // 視窗類名稱

text("酷酷的糖"), // 視窗標題

ws_overlappedwindow, // 視窗風格,或稱視窗格式

//ws_overlappedwindow相當於(ws_overlapped | ws_caption | ws_sysmenu | ws_thickframe | ws_minimizebox | ws_maximizebox)

cw_usedefault, // 初始 x 座標

cw_usedefault, // 初始 y 座標

cw_usedefault, // 初始 x 方向尺寸

cw_usedefault, // 初始 y 方向尺寸

null, // 父視窗控制代碼

null, // 視窗選單控制代碼

hinstance, // 程式例項控制代碼

null); // 建立引數

showwindow(hwnd, icmdshow); //顯示視窗

updatewindow(hwnd); //更新視窗

/*bool winapi getmessage(

_out_ lpmsg lpmsg,

_in_opt_ hwnd hwnd,

_in_ uint wmsgfiltermin,

_in_ uint wmsgfiltermax

);*/

while (getmessage(&msg, null, 0, 0))

return msg.wparam;

}lresult callback wndproc(hwnd hwnd, uint message, wparam wparam, lparam lparam)

return defwindowproc(hwnd, message, wparam, lparam);

}

WPF 處理滑鼠點選窗體內空白區域的事件

有時需要顯示全屏的背景有透明度的窗體,用於訊息提示,使用者點選透明區域將窗體關閉。假設窗體中有1個控制項 或者其他控制項 顯示提示資訊,點選窗體中除之外的區域,窗體自動關閉。可以在window和image上,都訂閱mouseleftbuttonup事件。private void window mou...

處理消費過程中的重複訊息

在訊息傳遞過程中,如果出現傳遞失敗的情況,傳送方會執行重試,重試過程中就有可能產生重複的訊息。如果沒有對重複訊息進行處理,就可能導致系統的資料出現錯誤。比如,乙個消費訂單訊息,統計下單金額的微服務,如果沒有正確處理重複訊息,那就會出現重複統計,導致統計結果錯誤。一 訊息重複的情況必然存在 在mqtt...

EVC長按滑鼠左鍵的訊息處理解決辦法

今天在弄evc 我的環境是evc4.0 sp4 下編寫應用程式,其中需要用到長按滑鼠左鍵彈出選單的訊息處理 因為對於智慧型手機來說沒有滑鼠,該事件對應觸筆長點螢幕 在網上找了一些資料,都說用wm rbuttondown這個訊息來做,但是這樣做後只相應滑鼠右鍵的訊息,不響應長按滑鼠左鍵的訊息。同事說過...