c++显示多个图像 gid+

发布于 2024-09-14 23:32:58 字数 635 浏览 2 评论 0原文

我试图在按下鼠标左键时显示图像。
我可以显示图像,但如果再次按下鼠标左键,旧图像将被删除。
这是我的代码
显示图像函数

{
    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;

有什么想法吗?

im trying to display image when left mouse button is down.
i can display the image but if the left mouse button is down again than the older image would be deleted.
here is my code
display image function

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

left mouse button down

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?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

初相遇 2024-09-21 23:32:58

您需要存储每次按下鼠标按钮时添加的坐标集合(数组/向量等) - 然后在 WM_PAINT 中渲染时,在每个位置绘制图像。

You need to store a collection (array / vector etc.) of coordinates that is added to each time the mouse button is pressed - and then when rendering in WM_PAINT, draw an image at each of these locations.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文