一、设计窗口类;
二、注册窗口类;
三、创建窗口;
四、显示及更新窗口。
WINDOWS中窗口的特征是由WNDCLASS结构体来定义的。WINDCLASS结构体定义如下:
typedef struct _WNDCLASS{
}WNDCLASS
在相应WM_PAINT消息时,要得到窗口的DC,必须调用BEGINPAINT函数,BEGINPAINT函数也只能在WM_PAINT消息的相应代码中使用,其它地方只能通过
GetDC(HWND hWnd)来得到DC的句柄。
函数:
HDC BeginPaint(
HWND hwnd, // 窗口的句柄
LPPAINTSTRUCT lpPaint // 绘制信息
);
参数
lpPaint:[输出]指向一个用来接收绘画信息的
PAINTSTRUCT结构
如果函数成功,
返回值是指定窗口的“显示设备描述表”句柄。
如果函数失败,返回值是NULL,表明没有得到显示设备的内容。
一个应用程序除了响应
WM_PAINT消息外,不应该调用BeginPaint。每次调用BeginPaint都应该有相应的
EndPaint函数。
函数:
EndPaint函数标记指定窗口的绘画过程结束;这个函数在每次调用BeginPaint函数之后被请求,但仅仅在绘画完成以后。
BOOL EndPaint(
HWND hWnd, //
窗口句柄
CONST PAINTSTRUCT *lpPaint // 绘制窗口的数据
);
参数
hWnd:[输入]已经被重画的窗口的HANDLE
lpPaint:[输入]指向一个PAINTSTRUCT结构,该结构包含了绘画信息,是BeginPaint函数返回的返回值:
函数:
BOOL TextOut(
HDC hdc, //
设备描述表句柄
int nXStart, // 字符串的开始位置 x坐标
int nYStart, // 字符串的开始位置 y坐标
LPCTSTR lpString, // 字符串
int cbString //
字符串中字符的个数
);
参数
hdc
[输入] 设备环境的句柄
nXStart
[输入] 指定用于字符串对齐的基准点的逻辑X坐标。
nYStart
[输入] 指定用于字符串对齐的基准点的逻辑Y坐标。
lpString
[输入] 指向将被绘制字符串的
指针。此字符串不必为以\0结束的,因为cbString中指定了字符串的长度。
cbString
[输入] 指定了字符串的长度。
代码示例:
switch(Msg){
}