草庐IT

NCCALCSIZE

全部标签

C++ WM_NCCALCSIZE 未被发送

我试图将编辑控件中的文本垂直居中,经过一些研究后我发现我必须处理WM_NCCALCSIZE消息。所以我已经将我的编辑控件子类化,但从未发送WM_NCCALCSIZE消息。我做错了什么吗?编辑:所以我正在很好地处理WM_NCCALCSIZE消息,并且我通过将WS_EX_CLIENTEDGE传递给CreateWindowEx创建了一个3d边框。但是,如果我通过终止主题服务来禁用Windows主题,边框就会在处理WM_NCCALCSIZE消息的控件上消失。另一个不处理WM_NCCALCSIZE消息的控件仍然具有正常的边框。所以我假设我应该在WM_NCCALCSIZE中做一些允许我保留边界的事

wpf - 为什么处理 WM_NCCALCSIZE 会导致我的窗口跳转?

我有一个捕捉到屏幕边缘的WPF应用程序(如果您在屏幕边缘的20像素以内,我只是设置窗口的.Top或.Left),但我最近添加了一些代码providedbytheWPFSDKTeam“弄乱”窗口镶边,虽然它工作得很好(screenshot),但它导致“snapto”意外移动窗口(例如:当它应该直接向下捕捉到底部时它跳到左边)我已经将范围缩小到他们对WM_NCCALCSIZE的处理......这真的很奇怪,因为他们基本上什么都不做,他们只是说他们处理了它,然后返回0。根据WM_NCCALCSIZE的文档,这应该只会导致整个窗口被视为客户端(没有非客户端边缘),但不知何故,这也意味着每当我的