预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共48页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

Windows编程技术教材及参考书目课程的基本目标基本概念5Win32API语言的演化MFC的发展趋势MFC的发展趋势MFC的发展趋势MFC的发展趋势ApplicationFramework和MFC.NETFrameworkCommonLanguage Runtime代码编译21CCmdTargetTwenty-twonon-CObject-inheritedclasses:Windows程序生命周期Windows程序生命周期Windows程序生命周期 在实际Windows程序中 1Registerclass由InitApplication调用 2-4由InitInstance调用 Dos:采用顺序过程的程序设计方法:按照预先设定操作组合,直接控制事件过程顺序 Windows:消息或事件驱动,改善用户界面 匈牙利标记法和Windows数据类型Windows数据类型LPSTR32位指针,指向一个字符串 LPCTSTR32位指针,指向常数字符串,此串可 移植到Unicode和DBCS(双字节) LPTSTR32位指针,指向字符串,此串可移植 到Unicode和DBCS LPVOID32位指针,指向未指定类型的数据 LPRESULT32位数值,作为窗口函数返回值 UINT在Win16中为16位无符号整数 在Win32中为32位无符号整数 WORD16位整数,无符号 WPARAM窗口函数的参数。Win16中为16位 Win32中为32位句柄MFC中还有许多宏,常见的有:以消息为基础用事件驱动消息消息,就是MSG结构,实际上是Windows内设的一种数据结构: typedefstructtagMSG { HWNDhwnd; //窗口句柄惟一标识窗口 UINTmessage;//消息值,如WM_XXX. WPARAMwParam;//消息的附加信息 LPARAMlParam;//消息的附加信息. … }MSG; wParamandlParam,依赖消息成员的值. 如WM_LBUTTONDOWN是CtrlorShift键的状态,和鼠标的坐标.应用程序类层次#include<windows.h>42/*------------------------------------------------------------ HELLOWIN.C--Displays"Hello,Windows98!"inclientarea (c)CharlesPetzold,1998 ------------------------------------------------------------*/ #include<windows.h> LRESULTCALLBACKWndProc(HWND,UINT,WPARAM,LPARAM); intWINAPIWinMain(HINSTANCEhInstance,HINSTANCEhPrevInstance, PSTRszCmdLine,intiCmdShow) { staticTCHARszAppName[]=TEXT("HelloWin"); HWNDhwnd; MSGmsg; WNDCLASSwndclass; wndclass.style=CS_HREDRAW|CS_VREDRAW; wndclass.lpfnWndProc=WndProc; wndclass.cbClsExtra=0; wndclass.cbWndExtra=0; wndclass.hInstance=hInstance; wndclass.hIcon=LoadIcon(NULL,IDI_APPLICATION); wndclass.hCursor=LoadCursor(NULL,IDC_ARROW); wndclass.hbrBackground=(HBRUSH)GetStockObject(WHITE_BRUSH); wndclass.lpszMenuName=NULL; wndclass.lpszClassName=szAppName; if(!RegisterClass(&wndclass)) { MessageBox(NULL,TEXT("ThisprogramrequiresWindowsNT!"), szAppName,MB_ICONERROR); return0; } hwnd=CreateWindow(szAppName,//windowclassname TEXT("TheHelloProgram"),//windowcaption WS_OVERLAPPEDWINDOW,//windowstyle CW_USEDEFAULT,//initialxposition CW_USEDEFAULT,//ini