windows程序复习资料.doc
文本预览下载声明
1.1 基本概念
Visual C++:微软公司出品的C++语言开发工具,允许程序员使用C++语言以可视化的编程方式快速开发基于Windows平台的系统软件及应用软件。
Windows API:Windows操作系统的应用编程接口,它是操作系统的一部分,由数千个函数组成,程序员可以在自己的程序里调用API函数以利用操作系统内置的一些功能。
MFC:微软基础类库。依据面向对象编程思想将API函数封装在几百个C++类中,使程序员可以利用面向对象的方法开发程序。
C++语言标准:C++语言是一种通用的计算机编程语言,国际标准化组织已经对其语法和基本类库进行了标准化,很多公司依据C++语言标准推出了自己的C++开发工具,Visual C++只是其中一种。
1、Windows应用程序的界面
●窗口:屏幕上的一块区域,是应用程序的主要输入输出部件,每个应用程序都拥有一个或多个窗口,开发Windows程序的第一步就是建立窗口。
窗口有两种存在形式:
打开的窗口和图标(最小化的窗口)
编写一个Windows应用程序,首先应创建一个或多个窗口,随后应用程序的运行过程即是窗口内部、窗口与窗口之间、窗口与系统之间进行数据处理和数据交换的过程
●菜单(工具栏):属于某个窗口,用户通过菜单向应用程序发送命令。
●对话框:一种特殊的窗口,一般用于与用户交互。
●控件:对话框中可以包含很多种控件,例如按钮、编辑框、列表框、滚动条等。从本质上讲,控件也是窗口。
2、开发Windows应用程序的方法
(1)使用Windows API函数:
API函数是Windows系统提供的编程接口,大致分为3类:
●窗口管理函数:窗口的创建、移动、修改等。
●图形设备接口函数:实现在窗口的客户区绘制图形和文本。
●系统服务函数:实现与操作系统有关的多种功能,例如多线程控制等。
(2)使用MFC类库:
类库中存放了大量预先定义的类,以面向对象的思想封装了API函数,程序员可以直接将这些类放到自己的程序里。
(3)使用.NET框架类库
(4)使用其它类库(OWL、JAVA SSH框架)
3、Windows应用程序中的数据类型
为了使程序的语义更加丰富,Windows在C语言的基础上自定义了很多种数据类型。例如:
HWND 无符号32位整数
HDC
HINSTANCE
……
DWORD unsigned long
BOOL bool
BYTE unsigned char
UINT unsigned int
注意:Windows自定义数据类型的关键字都是大写
3、 Windows应用程序中的数据类型
为了使Windows编程工作更为直观,微软公司的SDK软件包定义了大量的数据类型,如HWND、HINSTANCE、UINT、HDC、HPEN、HBRUSH、HANDLE等。这些数据类型大部分实际上是32位整数。(参见P3)
首先需要说明的是,这些数据类型不属于标准C++的范围,它们是微软公司自己使用typedef关键字定义的,目的是使编程更为方便。
另外,微软还定义了大量的符号常量(参见P4),如
WM_KEYDOWN、WM_PAINT、WM_CLOSE(消息号)
SW_SHOW SW_SHOWMINIMIZE SW_SHOWMAXMIZE(窗口显示方式)
这些符号常量对应着一个具体的数值,例如:
#define WM_KEYDOWN 0x0100
#define WM_KEYUP 0x0101
#define WM_MOUSEMOVE 0x0100
在程序中当然可以直接使用具体数值,但很不方便,推荐使用符号常量。
数据类型和符号常量的定义带来两个结果:一方面使初学者难以入门,觉得Windows程序晦涩难懂,一方面使程序更易维护和升级。
4、匈牙利表示法:
一个标识符可由多个英文单词组成,每个英文单词的第一个字母大写。例如:
CreateWindow、ShowWindow、GetMessage
HWND CreateWindow(
LPCTSTR lpClassName, // pointer to registered class name
LPCTSTR lpWindowName, // pointer to window name
DWORD dwStyle, // window style
int x, // horizontal position of window
int y, // vertical position of window
int
显示全部