原创 贪吃蛇(P001)知识点总结

2011-2-9 18:37 1893 8 8 分类: 软件与OS

 


游戏试完:


游戏代码(需密码)


相关知识点:


1
WNDCLASS(已被WNDCLASSEX取代)是一个结构,描述窗口类的基本信息,注册窗口类的时候需要提供这个结构,系统会储存这个结构中的数据。每个窗口类都有这样一个结构,但结构中的信息是不同的。 窗口类与WNDCLASS的关系相当于人与户口的关系。一个结构,记录了窗口的属性。


2
CreateWindow 函数创建一个交叠的、弹出的或者子窗口。它指定窗口类、窗口标题、窗口风格以及窗口初始化时的位置和大小(可选的)。它也指定了窗口的父窗口或者所有者,还可以指定窗口的菜单。要使用除了被CreateWindow支持的扩展的窗口风格,使用CreateWindowEx 函数。
语法:
HWND CreateWindow(     
    LPCTSTR lpClassName,
    LPCTSTR lpWindowName,
    DWORD dwStyle,
    int x,
    int y,
    int nWidth,
    int nHeight,
    HWND hWndParent,
    HMENU hMenu,
    HINSTANCE hInstance,
    LPVOID lpParam
);


3
函数功能:该函数设置指定窗口的显示状态。   
函数原型:BOOL ShowWindow(HWND hWnd, int nCmdShow;


4
函数原型:HDC GetDC(HWND hWnd);   
参数: hWnd:设备上下文环境被检索的窗口的句柄,如果该值为NULL,GetDC则检索整个屏幕的设备上下文环境。
函数功能:该函数检索一指定窗口的客户区域或整个屏幕的显示设备上下文环境的句柄,以后可以在GDI函数中使用该句柄来在设备上下文环境中绘图。   
GetDCEx函数是GetDC的一个扩展,它能使应用程序更多地控制在客户区域内如何或是否发生剪切。  


5
函数原理:HBRUSH CreateSolidBrush(COLORREF crColor);   
参数:   crColor:指定刷子的颜色。   
返回值:如果该函数执行成功,那么返回值标识一个逻辑实心刷子;如果函数失败,那么返回值为NULL。
函数功能:该函数创建一个具有指定颜色的逻辑刷子。  


6
函数原型:int FillRect(HDC hdc, CONST RECT *lprc, HBRUSH hbr);{( void FillRect( LPCRECT lpRect, CBrush* pBrush );})   
函数功能:该函数用指定的画刷填充矩形,此函数包括矩形的左上边界,但不包括矩形的右下边界。   
参数:   
hdc:设备环境句柄。   
lprc:指向含有将填充矩形的逻辑坐标的RECT结构的指针。   
hbr:用来填充矩形的画刷的句柄。   
返回值:如果函数调用成功,返回值非零;如果函数调用失败,返回值是0。


7
定时器函数
SetTimer这个API函数的原型   
UINT_PTR SetTimer(   
HWND hWnd, // 窗口句柄   
UINT_PTR nIDEvent, // 定时器ID,多个定时器时,可以通过该ID判断是哪个定时器   
UINT uElapse, // 时间间隔,单位为毫秒   
TIMERPROC lpTimerFunc // 回调函数);


8
srand函数是随机数发生器的初始化函数。   
原型:void srand(unsigned seed);   
用法:它需要提供一个种子,如: srand(1); 直接使用1来初始化种子。不过常常使用系统时间来初始化,即使用 time函数来获得系统时间,它的返回值为从 00:00:00 GMT, January 1, 1970 到现在所持续的秒数,然后将time_t型数据转化为(unsigned)型再传给srand函数,即: srand((unsigned) time(&t)); 还有一个经常用法,不需要定义time_t型t变量,即: srand((unsigned) time(NULL)); 直接传入一个空指针,因为你的程序中往往并不需要经过参数获得的t数据。srand((int)getpid()); 使用程序的ID(getpid())来作为初始化种子,在同一个程序中这个种子是固定的.


游戏截图:


 


4740d006-b852-4416-816c-b686c61fdcd8.JPG


676501ad-c579-4181-bff5-c7bd6fe8a67a.JPG


 


 

文章评论0条评论)

登录后参与讨论
我要评论
0
8
1
2
3
4
5
6
7
8
9
0
关闭 站长推荐上一条 /4 下一条