windows程式設計筆記7

來源:互聯網
上載者:User

1.Windows程式員開始時總是複製一段代碼然後做相應修改
         2.常量首碼註記:
               CS  —— Class Stye      CW —— Create Window      DT —— Draw Text     

               IDI —— ID of Icon       IDC —— ID of Cursor          MB —— MessageBox
               SND —— Sound          WM —— Window Message  WS —— Window Style
               WParam —— WcharParam (16bit)     LParam —— LongParam(32bit) 預設為16位系統,而在32位系統中,兩者均為32bit,W失去意義
               LRESULT —— LongResult
               #define CALLBACK __stdcall
               HINSTANCE  —— Handle of Instance  HWND —— Handle of Window  HDC —— Handle of Device Content  32bit           

         3.RegisterClass之後根據WndClass中的classname來CreateWindow,而classname屬性在WndClass最後,多少有些降低了它的重要性,讓人容易遺忘,至少剛開始時我是這樣的。
         4.32bit系統無需判斷hprevinstance,而16bit系統需要以節省記憶體。
         5.是否可理解所有視窗都是桌面視窗的子視窗或者間接子視窗?
         6.UpdateWindow(hwnd)向hwnd發送WM_PAINT訊息。
         7.WM_Quit導致GetMessage返回0,訊息迴圈結束。而PostQuitMessage通常用於響應WM_Destroy來向訊息佇列發送WM_Quit訊息。為何不直接發送WM_Quit訊息?如果這樣的話在程式關閉之前你無法做任何其他動作。WM_Destroy響應函數可用於程式清理工作。
         8.TraslateMsg進行鍵盤轉換,DispatchMsg將訊息交給視窗,而視窗將其交給適合的訊息處理函數。
         9.Windows程式所做的一切都是處理響應發送給視窗過程的訊息。
         10.Windows會在建立之後給視窗發送WM_CREATE訊息,而不是之前一直潛意識中誤解的WM_CREATE訊息的響應函數來負責Create Windows。
         11.訊息迴圈和視窗過程並非並發進行。
         12.DefWndProc也是你視窗的一部分。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.