没有合适的资源?快使用搜索试试~ 我知道了~
MFC入门培训手册范本.pdf
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 83 浏览量
2023-05-24
13:04:46
上传
评论
收藏 464KB PDF 举报
温馨提示
试读
13页
MFC入门培训手册范本.pdf
资源推荐
资源详情
资源评论
一.学习 MFC 所应具备的基础知识
1.Win32 程序基础.
2.面向对象与 C++语言基础.
1.Win32 程序基础
一) 几个重要概念:
API:系统开放出来给程序员调用的函数.
SDK:开发工具包,以 API 编写的程序也叫 SDK 程序.
MFC:是一个构建在 Windows API 上的 C++类库.
Application Framework:指一个关连,包装良好的类库(MFC 就是一个 FrameWork).
GUI:
MDI:
SDI:
UI:
二)Windows 编程模型
1)以消息为基础,事件为驱动.(message base, event driven)
2)用 Win32 实现”Hello World!”.
3)消息映射模型(message map)-一个重要的 MFC 概念.
1.定义一个消息实体
typdef struct MSGMAP_ENTRY_
{
UINT nMessage;
LONG (*pfn) (HWND, UINT, WPARAM, LPARAM);
} MSGMAP_ENTRY ;
2.把消息和消息处理函数关联起来.
MSGMAP_ENTRY messageEntries[] =
{
WM_CREATE, OnCreate,
WM_PAINT, OnPaint,
WM_SIZE, OnSize,
WM_COMMAND, OnCommand,
WM_CLOSE, OnClose,
WM_DESTROY, OnDestroy
};
MSGMAP_ENTRY commandEntries[] =
{
IDM_ABOUT, OnAbout,
IDM_EXIT, OnExit,
}
#define dim(x) (sizeof(x)/sizeof(x[0]));
3.更好的消息处理函数
LRESULT CALLBACK WndProc(HWND hWnd, UINT nMessage, WPARAM wParam,
LPARAM lParam)
{
int i;
for (i = 0; i < dim(messageEntries); i ++)
{
if (nMessage == messageEntries[i].nMessage)
return (*messageEntries[i].pfn)(hWnd,nMessage,wParam,lParam));
}
return DefWindowProc(hWnd,nMessage,wParam,lParam);
}
LONG OnCommand(HWND hWnd, UINT nMessage, WPARAM wParam, LPARAM lParam)
{
int i;
for(i = 0; i < dim(commandEntries); i ++)
{
if (nMessage == commandEntries[i].nMessage)
return (*commandEntries[i].pfn)(hWnd,nMessage,wParam,lParam));
}
return DefWindowProc(hWnd, nMessage,wParam,lParam);
}
LONG OnCreate(HWND hWnd, UINT nMessage, WPARAM wParam, LPARAM lParam)
{
.....
}
LONG OnAbout(HWND hWnd, UINT nMessage, WPARAM wParam, LPARAM lParam)
{
......
}
4.Windows 程序的生死
5.空闲的处理
while(1)
{
if (PeekMessage(&msg, NULL, 0, 0, PM_REMOVE))
{
if (msg.message == WM_QUIT)
break;
TranslateMessage();
DispatchMessage();
}
else
OnIdle();
}
4)第一个 MFC 程序- “Hello World!”
//Hello.h
class CMyApp : public CWinApp
剩余12页未读,继续阅读
资源评论
hhappy0123456789
- 粉丝: 58
- 资源: 5万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功