js獲取回調(diào)函數(shù)返回值 sendmessage與postmessage有什么區(qū)別?
sendmessage與postmessage有什么區(qū)別?事實上,你可以通過搜索互聯(lián)網(wǎng)找到很多答案!在線答案不能讓你滿意嗎?你希望我們讓你明白嗎?讓我告訴你我的理解。希望你能理解。1. SendMes
sendmessage與postmessage有什么區(qū)別?
事實上,你可以通過搜索互聯(lián)網(wǎng)找到很多答案!在線答案不能讓你滿意嗎?你希望我們讓你明白嗎?讓我告訴你我的理解。希望你能理解。
1. SendMessage您可以將其理解為調(diào)用window過程函數(shù)。Lresult回調(diào)WindowProc(hWnd,hWnd,uint message,wParam wParam,lParam lParam)很容易理解!把它們等同起來。SendMessage調(diào)用WindowProc,SendMessage的返回值就是WindowProc的返回值。2.郵件比較麻煩。PostMessage之后,系統(tǒng)會將消息放入程序的消息隊列中。然后消息循環(huán)(通常在Win32程序中看到)while(GetMessage(.){..DispatchMessage(…);}GetMessage將獲得此消息。(對于許多初學(xué)者來說,不應(yīng)該理解這個GetMessage,因為它與我們通常的程序代碼執(zhí)行思想有很大的不同。GetMessage有時會被阻塞,程序就停在那里。什么時候叫,誰叫?--其實,這都是制度問題。當(dāng)系統(tǒng)發(fā)現(xiàn)程序的消息隊列中有消息時,它會讓程序調(diào)用GetMessage取出消息,while循環(huán)將繼續(xù)執(zhí)行。當(dāng)涉及到dispatchmessage時,它可以等效于調(diào)用windowprocedure函數(shù)WindowProc。其思想是:PostMessage=消息進入消息隊列-GetMessage取出消息-程序執(zhí)行dispatchmessage-dispatchmessage相當(dāng)于調(diào)用window procedure函數(shù),所以這兩個函數(shù)最終都會調(diào)用window procedure函數(shù),但是調(diào)用PostMessage之前有一些“曲折”的步驟。