• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            隨筆 - 15  文章 - 5  trackbacks - 0
            <2011年9月>
            28293031123
            45678910
            11121314151617
            18192021222324
            2526272829301
            2345678

            常用鏈接

            留言簿

            隨筆分類

            隨筆檔案

            文章分類

            文章檔案

            搜索

            •  

            最新評論

            • 1.?re: 2011年9月26日[未登錄]
            • 我不是吹噓,為什么1,2,3,4,5,7,9,10,11,12我都知道一點????
              看來我估計可以過電面啊~_~
            • --ZJ
            • 2.?re: 2011年9月26日
            • 有計劃的人生會很精彩。。
            • --Cheap glueless lace front wigs
            • 3.?re: 2011年9月26日
            • (14)舉個例子說明你學習能力比較強,
              牛!

              那個騰訊就是做QQ的吧,QQ里面還內(nèi)嵌個木馬,有事沒事的掃描下用戶磁盤,唉,公司技術(shù)就這鳥水平,還對應(yīng)聘者提那么多要求。
            • --Chipset
            • 4.?re: 2011年9月26日
            • 問這么多問題,要求不低啊,呵呵,要回答好需要很扎實的基礎(chǔ)
            • --LoveBeyond
            • 5.?re: 2011年9月26日
            • 這些問題我十有八九答不上來...慚愧啊
            • --pezy

            閱讀排行榜

            評論排行榜

            消息處理過程:
            1消息定義:
            消息簡單的說就是指通過輸入設(shè)備向程序發(fā)出指令要執(zhí)行某個操作。具體的某個操作就是已經(jīng)寫好的代碼,成為消息處理函數(shù)。
            為何要引進消息映射。一個程序往往擁有多個窗體,主窗口就算一個,其他菜單工具欄等等子窗口,那需要寫多少個switchcase語句,所以MFC采用了消息映射機制,利用一個數(shù)組,將窗口消息和相對應(yīng)的消息處理函數(shù)進行映射,可以理解成這個是一個表,該機制叫消息映射
            AFX_MSGMAP可以得到基類的消息映射入口地址和得到本身的消息映射入口地址。
            2消息種類:
            (1)windows消息,主要包含WM_開頭的消息,WM_COMMAND消息除外,由窗口和視圖處理,此類消息帶有確定如何處理消息的參數(shù)。
            (2)控件通知,此類消息包含從控件和其他子窗口發(fā)送到其父窗口的WM_COMMAND通知消息,
            (3)命令消息,包含了用戶界面對象發(fā)出的WM_COMMAND通知消息,
            其中windows消息和控件通知消息由窗口來處理,CFrameWnd,CMDIFrameWnd,CMDIChildWnd,CView,CDialog
            命令消息更廣的是對象處理
            形式如下:ON_COMMAND(id,memberFxn);
            對于通知消息,例如樹形控件是ON_CONTROL(EN_CHANGE,id,memberFxn);
            3消息處理過程
            MFC消息處理過程如下:
            (1)_AfxCbtFilterHook()截獲消息(這個是一個鉤子函數(shù));
            (2)_AfxCbtFilterHook()把窗口過程設(shè)定為AfxWndProc();
            (3)函數(shù)AfxWndProc()接收windows操作系統(tǒng)的發(fā)送的消息。
            (4)函數(shù)AfxWndProc()調(diào)用函數(shù)AfxCallWndProc()進行消息處理;
            (5)函數(shù)AfxCallWndProc()調(diào)用CWnd類的方法WindowProc進行消息處理。
            4添加用戶自定義消息處理函數(shù)
            第一步,定義消息,#define WM_MYMESSAGE (WM_USER+100)
            第二步,實現(xiàn)消息處理函數(shù),該函數(shù)使用WPRAM和LPARAM參數(shù),并返回LPRESULT
            LPRESULT CMainFrame::OnMyMessage(WPARAM wParam,LPARAM lParam)
            {
             return 0;
            }
            第三步:在類頭文件中的FX_MSG塊中說明消息處理函數(shù)
            形式如下
            afx_msg LRESULT OnMyMessage(WPARAM wParam,LPARAM lParam)
            第四步。在用戶類的消息塊中,使用ON_MESSAGE宏指令將消息映射到消息處理函數(shù)中。
            ON_MESSAGE(WM_MYMESSAGE,OnMyMessage)
            可以看出來,用戶定義的消息和通過classwizard添加的消息一樣。
            5windows消息循環(huán)機制
            windows消息函數(shù)
            從消息隊列中取出消息
            在MSDN中PeekMessage的定義
            BOOL PeekMessage
            The PeekMessage function checks a thread message queue for a message and places the message (if any) in the specified structure.

            BOOL PeekMessage(
              LPMSG lpMsg,         // pointer to structure for message
              HWND hWnd,           // handle to window
              UINT wMsgFilterMin,  // first message
              UINT wMsgFilterMax,  // last message
              UINT wRemoveMsg      // removal flags
            );
            從線程消息隊列中取出一個消息
            GetMessage
            The GetMessage function retrieves a message from the calling thread's message queue and places it in the specified structure. This function can retrieve both messages associated with a specified window and thread messages posted via the PostThreadMessage function. The function retrieves messages that lie within a specified range of message values. GetMessage does not retrieve messages for windows that belong to other threads or applications.

            BOOL GetMessage(
              LPMSG lpMsg,         // address of structure with message
              HWND hWnd,           // handle of window
              UINT wMsgFilterMin,  // first message
              UINT wMsgFilterMax   // last message
            );

            如果把2,3,4設(shè)置為null或者0,表示接受本程序的所有消息
            還要注意上面兩者的區(qū)別,
            都是比較基礎(chǔ)的東西,

            posted on 2011-09-25 10:43 mengkai 閱讀(305) 評論(0)  編輯 收藏 引用
            国内精品久久久久影院优| 国产成人精品久久免费动漫| 国产免费久久久久久无码| 少妇人妻综合久久中文字幕| 国产精品久久久久久久久鸭| 久久福利青草精品资源站免费| 久久午夜免费视频| 久久国产精品偷99| 久久精品人人做人人爽电影| 国产成人久久777777| 一本色综合久久| 久久久久久国产精品美女| 国产69精品久久久久久人妻精品| 亚洲国产成人精品91久久久| 久久久久18| 国产亚洲欧美成人久久片| 伊人久久精品影院| 久久精品亚洲男人的天堂| 国内精品久久久人妻中文字幕| 人妻无码αv中文字幕久久琪琪布 人妻无码精品久久亚瑟影视 | 久久人人爽人人爽人人片av麻烦 | 欧美亚洲另类久久综合| 久久婷婷激情综合色综合俺也去| 性做久久久久久久| 国产精品久久国产精品99盘| 精品人妻伦九区久久AAA片69 | 青青热久久综合网伊人| 色综合久久无码中文字幕| 久久久久亚洲AV无码专区首JN| 久久综合九色综合久99| 国产精品久久久久久久app| 久久露脸国产精品| 久久久久无码国产精品不卡| 国内精品久久久久久久coent| 久久久久综合网久久| 97超级碰碰碰碰久久久久| 青草久久久国产线免观| 伊色综合久久之综合久久| 伊人 久久 精品| 久久精品国产亚洲αv忘忧草| 久久久久99这里有精品10|