1 / 72
文档名称:

Windows 程序设计基础.pdf

格式:pdf   页数:72页
下载后只包含 1 个 PDF 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

Windows 程序设计基础.pdf

上传人:2051982956 2014/7/31 文件大小:0 KB

下载得到文件列表

Windows 程序设计基础.pdf

文档介绍

文档介绍:Windows 程序设计基础





Windows 程序设计基础



















陶治江
四川大学电气信息学院
1
Windows 程序设计基础
Windows 程序一般进行的是三个模块的调用:
:处理的是在传统上是使用操作系统内核处理的事物——内存管理、文件
I/O 和事物处理
:用户界面,实现所有的窗口逻辑
:一个图形设备接口,允许程序在屏幕和打印机上显示文本和图形
第一个窗口程序的实例:
#include<>
LRESULT CALLBACK WndProc(HWND,UINT,WPARAM,LPARAM);
int WINAPI WinMain(
HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR lpCmdLine,
int nCmdShow
)
{
static TCHAR szAppName[]=TEXT("Hello,Windows XP");
HWND hwnd;
MSG msg;
WNDCLASS wndclass;

=CS_HREDRAW|CS_VREDRAW;
=WndProc;
=0;
=0;
=hInstance;
=LoadIcon(NULL,IDI_APPLICATION);
=LoadCursor(NULL,IDC_ARROW);
=(HBRUSH)GetStockObject(WHITE_BRUSH); =NULL;
=szAppName;
if(!RegisterClass(&wndclass))
{
MessageBox(NULL,TEXT("This program needs Windows NT!"),szAppName,MB_ICONERROR);
return 0;
}
hwnd=CreateWindow(szAppName,TEXT("Hello 程序"),WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,NULL,NULL,hInstance,NULL);

ShowWindow(hwnd,nCmdShow);
UpdateWindow(hwnd);

while(GetMessage(&msg,NULL,0,0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
2
Windows 程序设计基础
}
return ;
}

LRESULT CALLBACK WndProc(HWND hwnd,UINT message,WPARAM wParam,LPARAM lParam)
{
HDC hdc;
PAINTSTRUCT ps;
RECT rect;

switch(message)
{
case WM_CREATE:
PlaySound(TEXT(""),NULL,SND_FILENAME|SND_ASYNC);
return 0;

case WM_PAINT:
hdc=BeginPaint(hwnd,&ps);
GetClientRect(hwnd,&rect);
DrawText(hdc,TEXT(" 这可是第一个 Windows 应用程序
哦!"),-1,&rect,DT_SINGLELINE|DT_VCENTER|DT_CENTER );
EndPaint(hwnd,&ps);
return 0;

case WM_DESTROY:
PostQuitMessage