
Code
#include <windows.h>//在windows下编程需要包含此头文件
LONG WINAPI WndProc(HWND,UINT,WPARAM,LPARAM);//前向声明处理消息的函数
int WINAPI WinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,LPSTR lpCmdLine,int nShowCmd)//主函数
{
WNDCLASS wc;//窗口实例
HWND hwnd;//句柄实例
MSG msg;//消息实例
//窗口实例属性配置
wc.style=0;
wc.lpfnWndProc=(WNDPROC)WndProc;
wc.cbClsExtra=0;
wc.cbWndExtra=0;
wc.hInstance=hInstance;
wc.hIcon=LoadIcon(NULL,IDI_WINLOGO);
wc.hCursor=LoadCursor(NULL,IDC_ARROW);
wc.hbrBackground=(HBRUSH)(COLOR_WINDOW+1);
wc.lpszMenuName=NULL;
wc.lpszClassName="Jelly's windows program";
//注册该窗口实例
RegisterClass(&wc);
//设置窗口样式
hwnd=CreateWindow(
"Jelly's windows program",
"Application",
WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT,
CW_USEDEFAULT,
CW_USEDEFAULT,
CW_USEDEFAULT,
HWND_DESKTOP,
NULL,
hInstance,
NULL
);
//显示窗口
ShowWindow(hwnd,nShowCmd);
//更新窗口
UpdateWindow(hwnd);
//消息循环处理
while(GetMessage(&msg,NULL,0,0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
return msg.wParam;
}
//消息函数的处理
LRESULT CALLBACK WndProc(HWND hwnd,UINT message,WPARAM wparam,LPARAM lparam)
{
// PAINTSTRUCT ps;
// HDC hdc;
switch(message)
{
case WM_PAINT:
// hdc=BeginPaint(hwnd,&ps);
// Ellipse(hdc,0,0,200,100);
// EndPaint(hwnd,&ps);
return 0;
case WM_DESTROY:
PostQuitMessage(0);
return 0;
}
return DefWindowProc(hwnd,message,wparam,lparam);
}
环境:Visual Studio 6.0(8.0或9.0要把字符集设置成未使用Unicode)
新建一个Win32 application