API图标资源

#include<windows.h>
#include<stdlib.h>
#include<string.h>
long WINAPI WndProc(HWND hwnd,UINT iMessage,UINT wParam,LONG lParam);
BOOL InitWindowsClass(HINSTANCE hInstance);
BOOL InitWindows(HINSTANCE hInstance,int nCmdShow);
HWND hWndMain;

//主函数
int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTR lpCmdLine,int nCmdShow)
{
 MSG Message;
 if(!InitWindowsClass(hInstance))
  return FALSE;
 if(!InitWindows(hInstance,nCmdShow))
  return FALSE;
 while(GetMessage(&Message,0,0,0))//消息循环
 {
  TranslateMessage(&Message);
  DispatchMessage(&Message);
 }
 return Message.wParam;
}

  //消息处理函数
long WINAPI WndProc(HWND hWnd,UINT iMessage,UINT wParam,LONG lParam)
{
 switch(iMessage)
 {
 case WM_DESTROY:
  PostQuitMessage(0);
  return 0;
 default:
  return (DefWindowProc(hWnd,iMessage,wParam,lParam));
 }
}

BOOL InitWindowsClass(HINSTANCE hInstance)//初始化窗口类
{
 WNDCLASS WndClass;
 WndClass.cbClsExtra=0;
 WndClass.cbWndExtra=0;
 WndClass.hbrBackground=(HBRUSH)(GetStockObject(WHITE_BRUSH));
 WndClass.hCursor=LoadCursor(hInstance,IDC_ARROW);
 WndClass.hInstance=hInstance;
 WndClass.lpfnWndProc=WndProc;
 WndClass.lpszClassName="WinIcon";
 WndClass.lpszMenuName=NULL;
 WndClass.style=CS_HREDRAW|CS_VREDRAW;
 return RegisterClass(&WndClass);
}


BOOL InitWindows(HINSTANCE hInstance,int nCmdShow)
{
 HWND hWnd;
 hWnd=CreateWindow("WinIcon",//生成窗口
  "图标显示示例程序",
  WS_OVERLAPPEDWINDOW,
  CW_USEDEFAULT,
  0,
  CW_USEDEFAULT,
  0,
  NULL,
  NULL,
  hInstance,
  NULL);
 if(!hWnd)
  return FALSE;
 hWndMain=hWnd;
 ShowWindow(hWnd,nCmdShow);//显示窗口
 UpdateWindow(hWnd);
 return TRUE;
}

你可能感兴趣的:(API图标资源)