易语言资源网 - 做最全的易语言资源下载社区
精易论坛授权登录

窗口非客户区扩展自定义   [复制链接]

    2023-02-02 08:38:54
    高级教程源码
    易语言资源网
    1561 次浏览
    来源链接

目前大部分自绘都是无边框窗口打底,

这种模式有些缺点就是无法享受win10的窗口外调大小(不会描述)

还有就是win11的snap layout功能也无法触发,

此模块通过处理WM_NCCALCSIZE

WM_NCHITTEST

WM_NC*等消息实现自定义非客户区同时实现原生系统控制按钮,

并且可以享受普通窗口的窗口调节大小(无需额外编写鼠标调节窗口大小)

* 由于把原先系统自带的非客户绘制ban了,所以用户需要自行绘制控制按钮,

这里范例不自带,但是窗口右上角144*48区域就是3个控制按钮的位置,

点击的实际功能还是有的


非客户区位置可自定义:


参考文档:

WM_NCCALCSIZE消息 (Winuser.h) - Win32 apps | Microsoft Learn



点我下载 (已有 35 次下载)

引用模块


源码文件名 模块文件名
测试范例.e
客户区扩展模块.ec
精易模块.ec


引用支持库


源码文件名 支持库文件名 支持库标识
ncex.e 系统核心支持库 5.7 d09f2340818511d396f6aaf844c7e325
测试范例.e 系统核心支持库 5.7 d09f2340818511d396f6aaf844c7e325
超文本浏览框支持库 2.2 5014D8FA6DCA40b68FA626D8183666EB
特殊功能支持库 3.1 A512548E76954B6E92C21055517615B0


[错误报告]   上一篇:网络助手0.3.2_host修改|用户管...     下一篇:类回调中用方法名称回调(源码及例子)...