- 2
- 0
- 约1.75万字
- 约 53页
- 2016-12-02 发布于浙江
- 举报
Chap8_VC创建Windows程序
第8讲 在VC中创建Windows应用程序 Windows 应用程序概述 窗口 消息驱动 创建Windows应用程序的方法 利用MFC创建Windows应用程序 MFC概述 创建基于对话框的Windows应用程序 多对话框应用程序 控件 §1 Windows应用程序概述 Windows的应用程序具有以下主要特点: 具有标准的GUI:窗口程序 采用“消息传递,事件驱动”的运行机制,即根据Windows发送的消息来处理用户的输入。Windows应用程序是被动工作的,它并不知道自己下一步该做什么,只是等待消息。当发生了一个事件,操作系统将事件转换成消息传递给应用程序,应用程序调用相应的消息处理程序,处理完毕后等待下一个消息。 1.1 窗口的界面元素 窗口是应用程序与用户交互的界面,应用程序通过窗口传递信息给用户,同样,用户通过窗口输入数据,给应用程序发布命令。 窗口元素以对象方式组织 一个应用程序可由多个窗口组成,程序的运行过程是窗口之间,窗口与系统,窗口与用户之间交换并处理数据的过程。 1.2 Windows应用程序的消息驱动 消息用于通知某个事件的产生 事件驱动的程序的逻辑顺序是按事件的产生而决定的,事件的产生不是预先定义的,有着随机性。 MSG typedef struct tagMSG { HWND hwnd; UINT message; WPARAM wParam; LPARAM lParam; DWORD time; POINT pt; }MSG; 1.3 用Visual C++编写Windows应用程序主要有两种方法 Win32应用程序的主函数为:Winmain() 使用 Windows 提供的应用程序接口函数API(Application Programming Interface) 使用 Microsoft提供的微软基础类 MFC (Microsoft Foundation Class)。 API Windows应用程序的主函数是WinMain(),WinMain()具有相对固定的程序结构,完成三个任务: 注册窗口类:将窗口的基本属性(边框、标题栏文字等)报告给系统.注册成功后才能创建窗口。 创建并初始化窗口:使用窗口类创建窗口。 创建消息循环 一般的程序都会套用这个程序框架,然后在此基础上加以修改,以满足新的需要。 直接使用API函数进行Windows编程时,需要熟记常用的API函数。 //包含应用程序中所需的数据类型和数据结构的定义 #includewindows.h //窗口函数说明 LRESULT CALLBACK WndProc(HWND,UINT,WPARAM,LPARAM); //--------------- 以下初始化窗口类 ---------------------- int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) { HWND hwnd ; MSG Msg ; WNDCLASS wc; char szApplicationName[]= Exam3_1Window; //窗口标题名 //定义窗口类 wc.style=CS_HREDRAW|CS_VREDRAW; //定义窗口类型为当窗口大小变化时窗口重画 wc.lpfnWndProc=WndProc; //定义窗口处理函数 wc.cbClsExtra=0; //窗口类无扩展 wc.cbWndExtra=0; //窗口实例无扩展 wc.hInstance=hInstance; //当前实例句柄 wc.hIcon=LoadIcon(NULL,IDI_APPLICATION);//窗口最小化图标为缺省图标 wc.hCursor=LoadCursor(NULL,IDC_ARROW) ; //窗口采用箭头光标 wc.hbrBackground=(HBRUSH)GetStockObject(WHITE_BRUSH); //窗口背景为白色 wc.lpszMenuName=NULL; //窗口中无菜单 wc.lpszClassName= szApplicationName;//定义应用程序标题 //------注册窗口类------- RegisterClass( wc); //---------------- 创建窗口 ------------------- hwnd=CreateWindow ( szApplicationName,
原创力文档

文档评论(0)