52ky2 发表于 5 天前

易语言模块 窗口常用操作模块[B_night].ec


模块名称:窗口常用操作模块
作者:岳扬软件工作室
版本:1.5
1.限制窗口大小
2.限制窗口移动范围
3.窗口边缘停靠
4.托盘图标重建
5.屏幕分辨率变化监控
6.系统关机请求监控

------------------------------
.版本 2
.子程序 _初始化窗口调整, , 公开, 放到窗口窗口创建完毕下,初始化窗口调整。。。。
.参数 窗口, 窗口, , 指定要调整的窗口。。
.参数 窗口句柄, 整数型, 可空, 指定要调整的窗口的句柄,非常规窗口时指定句柄。。
.子程序 _结束窗口调整, , 公开, 放到窗口即将销毁下。。。。
.子程序 窗口位置和大小保存, , 公开, 保存当前窗口在屏幕中的位置
.参数 窗口, 窗口, 可空, 指定要读取配置的窗口,为空时必须开启默认窗口。
.参数 配置文件名, 文本型, , 保存设置的配置文件名。
.参数 配置节名称, 文本型, 可空, 默认为: "窗口参数"
.子程序 窗口位置和大小读取, , 公开, 读回窗口在屏幕中的位置,配置项不存在时将不会读取!
.参数 窗口, 窗口, 可空, 指定要读取配置的窗口,为空时必须开启默认窗口。
.参数 配置文件名, 文本型, , 读取设置的配置文件名。
.参数 配置节名称, 文本型, 可空, 默认为: "窗口参数"
.子程序 关闭窗口大小限制, , 公开, 取消窗口大小限制
.子程序 关闭窗口靠边隐藏, , 公开
.子程序 关闭窗口位置限制, , 公开, 取消窗口大小限制
.子程序 关闭托盘图标防丢失, , 公开, 放到窗口即将销毁下。。。。
.子程序 监控屏幕分辨率变化, , 公开, 显示分辨率变更时将回调参数中的子程序。
.参数 回调子程序, 子程序指针, , 将执行的子程序。。。
.子程序 监控系统关机请求, , 公开, 系统执行注销,重启,关机时将通知程序,避免窗口可否关闭为假时出现关不了机的情况。
.参数 回调子程序, 子程序指针, , 将执行的子程序。。。
.子程序 开启窗口大小限制, , 公开, 默认限制当前尺寸为最小尺寸,z大不限制
.参数 最小宽度, 整数型, 可空
.参数 最小高度, 整数型, 可空
.参数 z大宽度, 整数型, 可空
.参数 z大高度, 整数型, 可空
.子程序 开启窗口靠边隐藏, , 公开, 当窗口在屏幕边缘时自动隐藏
.参数 停靠大小, 整数型, 可空, 停靠时在屏幕边缘露出的窗口大小,默认为5像素
.参数 显示速度, 整数型, 可空, 窗口在停靠时隐藏或显示的速度,默认为15
.子程序 开启窗口位置限制, , 公开, 默认为屏幕范围内,显示器分辨率改变后自动调整
.参数 左边, 整数型, 可空
.参数 顶边, 整数型, 可空
.参数 右边, 整数型, 可空
.参数 底边, 整数型, 可空
.子程序 开启托盘图标防丢失, , 公开, 开启后可以避免托盘图标丢失的问题
.参数 窗口句柄, 整数型, , z好是启动窗口的句柄(不会被销毁的窗口)
.参数 回调子程序, 子程序指针, , 在托盘图标消失后,将执行此子程序。。。
.子程序 取任务栏信息, 整数型, 公开, 获取任务栏的矩形区域,成功返回任务栏高度,失败返回0
.参数 保存任务栏信息的变量, 矩形_, 可空, 默认为全局变量:取任务栏信息
.子程序 鼠标是否在窗口范围内, 逻辑型, 公开, 用于获得鼠标当前是否在窗口上,在返回 真 ;不在返回 假
.参数 窗口句柄, 整数型, 可空, 要判断的窗口句柄
.全局变量 任务栏信息, 矩形_, 公开, , 通过子程序取任务栏信息获取到的任务栏的矩形区域
.数据类型 矩形_, 公开, RECT
    .成员 左边, 整数型, , , Left
    .成员 顶边, 整数型, , , Top
    .成员 右边, 整数型, , , Right
    .成员 底边, 整数型, , , Bottom
.数据类型 坐标_, 公开, 坐标;POINTAPI
    .成员 横向位置, 整数型, , , X坐标
    .成员 纵向位置, 整数型, , , Y坐标
.DLL命令 复制内存_, , "kernel32.dll", "RtlMoveMemory", 公开, CopyMemory
    .参数 pDest, 整数型
    .参数 pSrc,
    .参数 ByteLen, 字节型
.DLL命令 复制内存1_, , "kernel32.dll", "RtlMoveMemory", 公开, CopyMemory1 
    .参数 pDest,
    .参数 pSrc, 整数型
    .参数 ByteLen, 字节型
.DLL命令 呼叫窗口函数地址_, 整数型, "user32.dll", "CallWindowProcA", 公开, CallWindowProcA将消息传答窗口函数 
    .参数 前一窗口函数地址, 子程序指针, , lpPrevWndFunc
    .参数 窗口句柄, 整数型, , hwnd
    .参数 消息值, 整数型, , msg
    .参数 附加参数1, 整数型, , wParam
    .参数 附加参数2, 整数型, , lParam
.DLL命令 内存清零_, , "kernel32.dll", "RtlZeroMemory", 公开, ZeroMemory将一块内存置零
    .参数 目的内存, , 传址, Destination
    .参数 长度, 整数型, , Length
.DLL命令 取窗口矩形_, 整数型, "user32", "GetWindowRect", 公开, GetWindowRect
    .参数 窗口句柄, 整数型
    .参数 矩形区域, 矩形_
.DLL命令 取鼠标位置_, 整数型, "user32", "GetCursorPos", 公开, GetCursorPos
    .参数 位置, 坐标_
.DLL命令 设置窗口信息_, 子程序指针, "user32", "SetWindowLongA", 公开, 在窗口结构中为指定的窗口设置信息指定数据的前一个值
    .参数 窗口句柄, 整数型, , hwnd,欲为其取得信息的窗口的句柄
    .参数 窗口信息值, 整数型, , nIndex,请参考GetWindowLong函数的nIndex参数的说明
    .参数 窗口信息新值, 子程序指针, , dwNewLong,由nIndex指定的窗口信息的新值
.DLL命令 设置时钟_, 整数型, "user32.dll", "SetTimer", 公开, SetTimer
    .参数 窗口句柄, 整数型, , hwnd
    .参数 事件标识符, 整数型, , nIDEvent
    .参数 时钟周期, 整数型, , uElapse
    .参数 回调函数地址, 整数型, , lpTimerFunc
.DLL命令 是否在矩形内_, 整数型, "user32", "PtInRect", 公开, PtInRect这个函数判断指定的点是否位于矩形lpRect内部
    .参数 lpRect, 矩形_, 传址
    .参数 x坐标, 整数型
    .参数 y坐标, 整数型
.DLL命令 销毁时钟_, 整数型, "user32.dll", "KillTimer", 公开, KillTimer
    .参数 窗口句柄, 整数型, , hwnd
    .参数 事件标识符, 整数型, , nIDEvent
.DLL命令 寻找顶级窗口_, 整数型, "user32.dll", "FindWindowA", 公开, FindWindow,寻找窗口列表中第一个符合指定条件的顶级窗口
    .参数 窗口类名, 文本型, , lpClassName,参见相关帮助,没有填 字符 (0)
    .参数 窗口文本, 文本型, , lpWindowName,参见相关帮助 ,没有填 字符 (0)
.DLL命令 寻找子窗口_, 整数型, "user32", "FindWindowExA", 公开, 在窗口列表中寻找与指定条件相符的第一个子窗口找到的窗口的句柄。如未找到相符窗口,则返回零。会设置GetLastError
    .参数 窗口句柄1, 整数型, , 在其中查找子的父窗口。如设为零,表示使用桌面窗口(通常说的顶级窗口都被认为是桌面的子窗口,所以也会对它们进行查找)
    .参数 窗口句柄2, 整数型, , 从这个窗口后开始查找。这样便可利用对FindWindowEx的多次调用找到符合条件的所有子窗口。如设为零,表示从第一个子窗口开始搜索
    .参数 欲搜索的类名1, 文本型, , 欲搜索的类名。“”表示忽略 ,没有填 字符 (0)
    .参数 欲搜索的类名2, 文本型, , 欲搜索的类名。“”表示忽略 ,没有填 字符 (0)
.DLL命令 注册窗口消息_, 整数型, , "RegisterWindowMessageA", 公开, 注册一个指定的消息字符串,返回消息值。
    .参数 lpString, 文本型, , 如:“TaskbarCreated”任务栏创建完毕
.常量 GWL_WNDPROC, "-4", 公开
.常量 WM_DISPLAYCHANGE, "126", 公开, 当显示器的分辨率改变后发送此消息给所有的窗口
.常量 WM_EXITSIZEMOVE, "562", 公开
.常量 WM_GETMINMAXINFO, "36", 公开, 此消息发送给窗口当它将要改变大小或位置;
.常量 WM_KEYDOWN, "256", 公开
.常量 WM_KEYUP, "257", 公开
.常量 WM_MOUSEMOVE, "512", 公开
.常量 WM_MOVE, "3", 公开
.常量 WM_MOVING, "534", 公开
.常量 WM_NCHITTEST, "132", 公开
.常量 WM_NCLBUTTONDOWN, "161", 公开
.常量 WM_NCLBUTTONUP, "162", 公开
.常量 WM_NCMOUSEMOVE, "160", 公开
.常量 WM_QUERYENDSESSION, "17", 公开, 当用户选择结束对话框或程序自己调用ExitWindows函数
.常量 WM_SIZE, "5", 公开
.常量 WM_SIZING, "532", 公开
.常量 WM_SYSCOMMAND, "274", 公开
.常量 WM_TASKBARCREATED, "49281", 公开, 任务栏创建完毕



页: [1]
查看完整版本: 易语言模块 窗口常用操作模块[B_night].ec