¥×¥í¥°¥é¥ß¥ó¥°¡ÊGDI¡Ë


¹àÌÜ
  1. ³µÍ×(Chapter1)
  2. »ö»Ï(Chapter2)

Chapter1¡¡³µÍ×

¥°¥é¥Õ¥£¥Ã¥¯¤ò°·¤¦¤Î¤Ê¤é¤Ð¡¢¤È¤¤¤¤¤Þ¤¹¤«¡¢¥²¡¼¥à¤Ê¤É¤ÎºîÀ®¤Ç¤Ï¡¢ºÇ¶á¤Ç¤ÏDirectX¤òÍѤ¤¤ë¤È¤¤¤¦¤Î¤¬¼çή¤È¤Ê¤Ã¤Æ¤ª¤ê¤Þ¤¹¡£GDI¤ÏÉÁ²è®Å٤ʤɤÎÅÀ¤ÇÎô¤ë¤È¤«¡¢²¿¤«¤¤¤í¤¤¤í¤¢¤ë¤è¤¦¤Ç¤¹¤¬¡¢¤ä¤Ã¤Ñ¤ê°ìÈÌŪ¤ÊWindows¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤òºîÀ®¤¹¤ë¤Ê¤éGDI¤ò»È¤¦¤Û¤¦¤¬¿ÆÏÂÀ­¤ÎÅÀ¤«¤é¤âÎɤ¤¤È»×¤ï¤ì¤ë¾ìÌ̤¬Â¿¡¹¤¢¤ê¤Þ¤¹¡£
¤È¤¤¤¦¤³¤È¤Ç¡¢GDI¤Ç¤½¤³¤½¤³Æ°¤¯¤â¤Î¤ò¡ª¤È¤¤¤¦¼ñ»Ý¤Ç°Ê²¼¡¢µ­½Ò¤·¤Æ¤¤¤¯Í½Äê¤Ç¤¹¡£

¥Ú¡¼¥¸ÀèÆ¬¤Ø

Chapter2¡¡»ö»Ï

¤È¤ê¤¢¤¨¤º¡¢¥Ù¡¼¥¹¤È¤Ê¤ëÁë¤ò¤Ä¤¯¤ë¤À¤±¤Î¥×¥í¥°¥é¥à¤Ç¤¹¡£°Ê¹ß¡¢¤³¤ì¤ò¸µ¤Ë¤¹¤¹¤á¤Æ¤¤¤­¤Þ¤¹¡£ÆÃ¤Ë¡¢Æñ¤·¤¤¤³¤È¤Ï²¿¤â»È¤Ã¤Æ¤¤¤Þ¤»¤ó¡£¤È¸À¤¤¤Þ¤¹¤«¡¢¤è¤¯»²¹Í½ñ¤Ê¤É¤Î°ìÈֺǽé¤ËºÜ¤Ã¤Æ¤¤¤ë¤â¤Î¤Ç¤¹¡£
#include    <windows.h>
#include    <winuser.h>

LRESULT CALLBACK WindowProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam);

int WINAPI  WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTR lpCmdLine,int nCmdShow)
{
    MSG         msg;
    WNDCLASSEX  wcex;
    HWND        hWnd;

    wcex.cbSize         =sizeof(WNDCLASSEX);
    wcex.style          =CS_HREDRAW|CS_VREDRAW;
    wcex.lpfnWndProc    =(WNDPROC)WindowProc;
    wcex.cbClsExtra     =0;
    wcex.cbWndExtra     =0;
    wcex.hInstance      =hInstance;
    wcex.hIcon          =LoadIcon(NULL,(IDI_APPLICATION));
    wcex.hCursor        =LoadCursor(NULL,IDC_ARROW);
    wcex.hbrBackground  =(HBRUSH)(COLOR_WINDOW+1);
    wcex.lpszMenuName   =NULL;
    wcex.lpszClassName  ="Prot Type Application";
    wcex.hIconSm        =0;
    
    if(RegisterClassEx(&wcex)==0)
    {return FALSE;}

    hWnd=CreateWindowEx(WS_EX_ACCEPTFILES,
                        wcex.lpszClassName,
                        "windows sample",
                        WS_OVERLAPPEDWINDOW,
                        CW_USEDEFAULT,
                        CW_USEDEFAULT,
                        640,
                        480,
                        NULL,
                        NULL,
                        hInstance,
                        NULL
                        );

    if(hWnd==0)
    {return FALSE;}

    ShowWindow(hWnd,nCmdShow);
    UpdateWindow(hWnd);
    while(GetMessage(&msg,NULL,0,0))
    {
        TranslateMessage(&msg);
        DispatchMessage(&msg);
    }
    return msg.wParam;

}

LRESULT CALLBACK WindowProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{
    switch(message)
    {
        case WM_CREATE:
            break;
        case WM_DESTROY:
            PostQuitMessage(0);
            break;
        
        default:
            return DefWindowProc(hWnd,message,wParam,lParam);
    }
    return 0;   
}


¥Ú¡¼¥¸ÀèÆ¬¤Ø


»ä¤Î¥Û¡¼¥à¥Ú¡¼¥¸¤Ø|