gpt4 book ai didi

c++ - 如何在不影响 ALT+F4 或在任务栏中关闭窗口的情况下重新调整窗口的关闭按钮?

转载 作者:搜寻专家 更新时间:2023-10-31 01:54:21 26 4
gpt4 key购买 nike

我正在使用 native C++ 和 WinAPI 编写程序。

这个程序有一个主应用程序窗口,我希望它能保持一定的持久性。通过红色 X 按钮关闭窗口似乎很自然,当我实际上不想退出程序时,我经常不小心按下它(这发生在我使用 Teamspeak 时)。因此,我尝试将红色 X 按钮重新用于最小化按钮,以避免意外退出。

但是,我的应用程序应该有一些方法来使用标准系统控件退出程序。我想允许 ALT+F4 并右键单击任务栏图标以关闭。我尝试拦截 WM_CLOSE 和 SYSCOMMAND (SC_CLOSE),但这似乎禁用了退出程序的所有标准系统方法(除了在 Process Explorer 中将其终止 - 这不是真正的标准方法)。

有没有办法只拦截窗口的红色X按钮?我注意到 Windows Live Messenger 会执行此操作,但我不知道如何执行此操作。

最佳答案

处理 WM_NCLBUTTONDOWN 消息并使用 WM_NCHITTEST 检查它,点击将被传送到 HTCLOSE 控件(这是你的红色 [ X] 解析为)。或者,处理 WM_NCHITTEST 本身,并通过将返回值替换为其他内容来防止发现窗口 GUI 的 HTCLOSE 部分。

关于c++ - 如何在不影响 ALT+F4 或在任务栏中关闭窗口的情况下重新调整窗口的关闭按钮?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9788662/

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