WM_PAINT 和鼠标事件。 MFC/WIN32 API

WM_PAINT and MOUSE Event. MFC/WIN32 API

我的 WM_PAINT 中有两个矩形,我想在其上绘制 Frame Rect 一旦 WM_MOUSE 触发了在每个矩形上切换的单击事件。这甚至可能吗?

请参阅上面@RemyLebeau 关于您的鼠标点击的评论。然后,在您的 WndProc 中,类似于:

switch (uMsg)
{
    // ...

    case WM_PAINT:
    {
        PaintStruct ps;
        HDC hDC = BeginPaint (hWnd, &ps);
        HBRUSH hBrush = (HBRUSH) GetStockObject (LTGRAY_BRUSH);   // say
        if (draw_first_rectangle)
            FrameRect (hDC, &my_first_rectangle, hBrush);
        if (draw_second_rectangle)
            FrameRect (hDC, &my_second_rectangle, hBrush);
        EndPaint (hWnd, &ps);
        return 0;
    }

    // ...

}

return DefWindowProc (hWnd, uMsg, wParam, lParam);

我相信你可以填空。