Win32 API Line

Windows Program(Win32 API) でラインを描画します。

前田稔の超初心者のプログラム入門

プログラムの説明

  1. 昔ながらの Windows Program(Win32 API) でラインを描画します。
    ベースとなるプログラムは Windows Program を作成する です。
  2. C:\DATA\Cpp\BAT\ にベースプログラムから次の修正を加えて WinLine.cpp の名前で格納して下さい。
    ウインドウのサイズを広げます。
        g_hWnd= CreateWindow(NAME,TITLE,WS_OVERLAPPEDWINDOW,
                CW_USEDEFAULT,CW_USEDEFAULT,600,400,
                NULL,NULL,hInst,NULL);
    
    WM_PAINT: で線を描画します。
    LRESULT  CALLBACK  WndProc(HWND hWnd,UINT msg,WPARAM wParam,LPARAM lParam)
    {   PAINTSTRUCT ps;
        HDC         hdc;
        HPEN        hPen,hOldPen;
    
        switch(msg)
        {   case WM_PAINT:
                hdc= BeginPaint (hWnd, &ps);
                hPen= CreatePen(PS_SOLID,2,RGB(255,0,0));
                hOldPen= (HPEN)SelectObject(hdc,hPen);  // hPen を選択
                MoveToEx(hdc,10,50,NULL);               // 開始点に移動
                LineTo(hdc,260,50);                     // 線を描く
                hPen= CreatePen(PS_SOLID,10,RGB(0,255,0));
                SelectObject(hdc,hPen);                 // hPen を選択
                MoveToEx(hdc,10,150,NULL);              // 開始点に移動
                LineTo(hdc,260,150);                    // 線を描く
                SelectObject(hdc,hOldPen);              // hPen を戻す
                DeleteObject(hPen);                     // ペンを削除
                EndPaint(hWnd, &ps);
                break;
            case WM_DESTROY:
                PostQuitMessage(0);
                return 0L;
        }
        //デフォルトの処理
        return  DefWindowProc(hWnd,msg,wParam,lParam);
    }
    
  3. スタートメニューから[すべてのプログラム][Visual C++ 2005 Express Edition][Visual Studio Tools] [Visual Studio 2005 コマンド プロンプト] から起動します。
  4. 次のコマンドをタイプして下さい。
    ウインドウに線が描画されます。
    C:\Users\maeda>CD C:\DATA\Cpp\BAT
    C:\DATA\Cpp\BAT>CL WinLine.cpp
    C:\DATA\Cpp\BAT>WinLine.exe
    

超初心者のプログラム入門(C/C++)