我一直在处理自定义GUI框架,因为我无法处理需要通过标记(XAML)开发UI的托管废话或本机代码。我正在尝试创建一个使用该GUI框架的应用程序的原型,但我在WinAPI中遇到了一个特定于平台的问题。正确删除窗口框架/边框
DWM并不真正允许定制非浸入式客户区域,它允许的唯一事情是扩展到客户区域,以便给定制假象。
因此,最好的行动方式是重建客户区(相对于WINAPI)内的“非客户区”,这需要我去掉标题,最大化,最小化按钮等。所以,我基本上列举所有我想要的东西,并将它们排列在一起并翻转所有的位,以便停用它们。
~(WS_CAPTION | WS_SYSMENU | WS_HSCROLL | WS_VSCROLL | WS_MINIMIZE | WS_MAXIMIZE | WS_THICKFRAME)
一旦这些风格走了,我不能用正常的关机程序(Alt + F4键,或者在任务栏上右击并准备“关闭”),因为他们没有工作。我不得不手动拦截VK_ESCAPE和PostQuitMessage(0),这样我就可以退出而不会被迫终止进程。
这是为什么呢?我该如何解决这个问题?
哈哈,它的工作,正确关闭!谢谢!我现在感觉非常愚蠢。 –