MFC開發 MFC第2個程式 訊息機制

2021-10-20 22:47:29 字數 1682 閱讀 7720

一、mfc環境準備

1、新建空的windows應用程式

檔案 ===> 新建 ===> windows桌面嚮導 ==>選擇空的windows程式,命名為mfc_first

2、屬性設定

右鍵專案 ==> 高階 ==> mfc的使用(在共享dll中使用mfc) 字符集(使用多位元組字元集合)

3、新建檔案命名為mfc_msg.cpp

二、編寫**

#include // 0x0400 - ox7fff

uint g_nregmsg1 = registerwindowmessage("my_reg_msg1");

uint g_nregmsg2 = registerwindowmessage("my_reg_msg2");

class cmsgframewnd : public cframewnd

;///本身視窗名稱

begin_message_map(cmsgframewnd, cframewnd)

//on_message(wm_create, oncreate)

//on_message(wm_paint,onpaint)

on_wm_create()

on_command(1001,ontest01)

on_command_range(1002,1004,ontest02_04)

on_en_change(1005,onenchange)

on_registered_message(g_nregmsg1,onresmsg1)

on_registered_message(g_nregmsg2, onresmsg2)

on_command(1006,ontest05)

on_command(1007, ontest06)

end_message_map()

int cmsgframewnd::oncreate(lpcreatestruct lpcreatestruct)

void cmsgframewnd::ontest01()

void cmsgframewnd::ontest02_04(uint nid)

void cmsgframewnd::onenchange()

void cmsgframewnd::ontest05()

void cmsgframewnd::ontest06()

lresult cmsgframewnd::onresmsg1(wparam wparam, lparam lparam)

lresult cmsgframewnd::onresmsg2(wparam wparam, lparam lparam)

//lresult cmsgframe::oncreate(wparam wparam, lparam lparam)

////lresult cmsgframe::onpaint(wparam wparam, lparam lparam)

//;// hdc hdc = ::beginpaint(m_hwnd, &ps);

// char sztext = "hello,world";

// textout(hdc, 100, 100, sztext, strlen(sztext));

// ::endpaint(m_hwnd, &ps);

// return 0;

//};

//程式類

MFC程式開發概述

一 mfc類庫的產生與發展 在microsoft推出windows 3.0之後,windows作業系統受到越來越多的人的青睞。但是不久,開發人員開發撰寫windows 應用程式是重複,厭煩的過程,而且效率極低。因為每乙個視窗都需要在視窗函式中處理大量的訊息,導致出現大量的重複 隨著c 語言的盛行,開...

MFC程式訊息處理的順序

mfc程式訊息處理的順序 mfc應用程式中處理訊息的順序 1.afxwndproc 該函式負責接收訊息,找到訊息所屬的cwnd物件,然後呼叫afxcallwndproc 2.afxcallwndproc 該函式負責儲存訊息 儲存的內容主要是訊息識別符號和訊息引數 用程式以後使用,然後呼叫window...

MFC學習筆記2 訊息對映

mfc庫並沒有採用虛函式來處理windows訊息,而是通過一些巨集來講特定的訊息對映到派生類中相應的成員函式內。mfc採用的document view框架結構,能夠將資料管理的 和顯示資料的程式 分開,並且設計了一套方便的訊息對映和命令傳遞機制,方便開發。在mfc下,訊息對映是通過巧妙的訊息對映 來...