我不喜欢原生尺寸边框的样子:
我想改用这种花哨的紫色边框:
我应该手动实现自己的大小边框,还是应该继续使用WS_THICKFRAME 窗口样式并自定义它?
如果我可以自定义它,我希望它也能在没有讨厌的黑客的情况下完成......
我不喜欢原生尺寸边框的样子:
我想改用这种花哨的紫色边框:
我应该手动实现自己的大小边框,还是应该继续使用WS_THICKFRAME 窗口样式并自定义它?
如果我可以自定义它,我希望它也能在没有讨厌的黑客的情况下完成......
您可以通过在窗口类型标志中指定 WS_POPUP 标志来创建没有边框和标题栏的窗口。
WM_NCHITTEST 消息的处理程序必须检查某个像素真正属于窗口的哪个部分(例如树脂化框架)并返回该部分的代码。
缺点:您必须自己绘制整个窗口内容(包括标题等)。
我认为您应该实现自己的重绘过程(例如在底部绘制一个紫色矩形,然后在角落绘制一个图标)。如果你想让你的窗口类似于 VS2013 窗口,那么你应该使用WS_POPUP
样式,然后实现你自己的重绘例程。如果您想自定义窗口的窗体,您可以使用区域(SetWindowRgn()
、CreateRectRgn()
、CreateRoundRectRgn()
、CreateEllipticRgn()
、CreatePolygonRgn()
等)。一般来说,使用 WinAPI 您可以做任何事情,但您是否仅限于 WinAPI?使用 MFC 或 Windows 窗体使创建窗口界面更容易是个好主意。