gpt4 book ai didi

c++ - 调整大小时,如何获得一个窗口来保留绘制的对象 C++

转载 作者:行者123 更新时间:2023-11-28 07:55:00 27 4
gpt4 key购买 nike

我的程序在屏幕上创建随机矩形。每次单击鼠标左键时,都会在窗口中添加一个随机大小和颜色的新矩形。但是,当我调整窗口大小时,所有的矩形都被删除了——我不希望这种情况发生。我不明白程序在调整大小时做了什么,它是在调用案例WM_PAINT吗?如果是这样,我需要包括什么以确保在调整大小时保持当前窗口状态。

最佳答案

您需要在收到 WM_PAINT 时保存状态并重新绘制。这只是 Microsoft 决定的协议(protocol)。因此,请确保将窗口状态保存在内存中。

在调整大小的情况下,您还会收到几条调整大小的消息,首先是一系列 WM_SIZING 事件,同时大小正在更改,然后是 WM_SIZE 当最终设置大小时。您将在两者之间收到 WM_PAINT 消息,并且您可以根据任何或所有这些事件自由地重新绘制应用程序。

关于c++ - 调整大小时,如何获得一个窗口来保留绘制的对象 C++,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12877116/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com