【发布时间】:2013-07-06 10:05:47
【问题描述】:
我使用这些样式创建了一个无边框窗口:WS_VISIBLE | WS_POPUP | WS_OVERLAPPED
问题是窗口不能移动。我知道我可以做一些事情,比如获取鼠标点击位置,然后计算每次出现WM_MOUSEMOVE 时窗口的最终位置。
但是这个解决方案并不稳定,因为当我移动鼠标太快时,它会跳出窗口,然后它就没有反应了。我不想设置一个钩子,因为它们太慢了。我已经搜索了互联网,但什么都没有出现。
理想情况下,我想要创建一个窗口,可以在没有边框或标题的情况下移动,我不需要自己跟踪鼠标,但 Windows 会为我做这件事,就像制作整个窗口标题。
【问题讨论】:
-
为什么表单需要响应您故意快速移动它?
-
@AustinBrunkhorst 因为这就是人们期望 Windows 的行为方式。如果你开始拖动一个窗口,窗口应该在你拖动结束的地方结束,而不是在鼠标光标碰巧超过窗口之间的某个点。
-
@HansPassant:也许吧,没看到。但无论如何,谢谢你的回答,jamesdlin。