次の方法で共有


クライアント領域での描画

BeginPaint 関数と EndPaint 関数を使用して、クライアント領域で図面の準備と完了を行います。 BeginPaint は、クライアント領域での描画に使用されるディスプレイ デバイス コンテキストへのハンドルを返します。 EndPaint は ペイント要求を終了し、デバイス コンテキストを解放します。

次の例では、ウィンドウ プロシージャによってクライアント領域に "Hello, Windows!" というメッセージが書き込まれます。 ウィンドウの作成時に文字列が表示されるようにするために、 WinMain 関数は、ウィンドウを作成して表示した直後に UpdateWindow を呼び出します。 これにより、 WM_PAINT メッセージがウィンドウ プロシージャにすぐに送信されます。

LRESULT APIENTRY WndProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) 
{ 
    PAINTSTRUCT ps; 
    HDC hdc; 
 
    switch (message) 
    { 
        case WM_PAINT: 
            hdc = BeginPaint(hwnd, &ps); 
            TextOut(hdc, 0, 0, "Hello, Windows!", 15); 
            EndPaint(hwnd, &ps); 
            return 0L; 

        // Process other messages.   
    } 
} 
 
int APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) 
{ 
    HWND hwnd; 
 
    hwnd = CreateWindowEx( 
        // parameters  
        ); 
 
    ShowWindow(hwnd, SW_SHOW); 
    UpdateWindow(hwnd); 
 
    return msg.wParam; 
}