c ++ отображать более одного изображения gid + - PullRequest
0 голосов
/ 19 августа 2010

Я пытаюсь отобразить изображение, когда левая кнопка мыши нажата.Я могу отобразить изображение, но если левая кнопка мыши снова нажата, более старое изображение будет удалено.вот мой кодфункция отображения изображения

{
    Graphics graphics(hdc);
    POINT pt;
    GetCursorPos(&pt);
    ScreenToClient(hWnd, &pt);
    Image shot(L"RegularShots.png");
    graphics.DrawImage(&shot, pt.x, pt.y);
}

левая кнопка мыши вниз

case WM_LBUTTONDOWN:
    RegularShots=0;
    InvalidateRect(hWnd, rect, false);
    break;

wm_paint

case WM_PAINT:
    hdc = BeginPaint(hWnd, &ps);
    OnPaint(hdc, hWnd, 1);
    if(RegularShots==0)
    {
        RegularShot(hdc, hWnd);
    }
    EndPaint(hWnd, &ps);
    break;

anyideas?

1 Ответ

0 голосов
/ 19 августа 2010

Вам необходимо сохранить набор (массив / вектор и т. Д.) Координат, который добавляется при каждом нажатии кнопки мыши, а затем при рендеринге в WM_PAINT нарисуйте изображение в каждом из этих мест.

...