类对象支持库(不是扁平命令)。路径:支持库 → 扩展类库 → 拖放类。
类型名必须写完整「拖放类」。声明时自动创建,一般无需再调 创建*。
硬约束
- 类型名必须写「拖放类」。
- 按窗口/组件名注册;回调在 UI 线程。
- 方法调用必须带括号。
快速开始
拖放类 td
函数 收到文件(整数 句柄, 文本 路径) {
输出(路径)
}
启动() {
整数 h = td.注册(主窗口)
td.置拖入文件(h, &收到文件)
}
拖放类/创建
共 1 条。
创建拖放
- 签名:
通用 创建拖放() - 说明:创建一个拖放对象。一般直接写「拖放类 td」即可(声明时自动创建);「创建拖放()」仅在需要显式赋值时使用。
拖放类/事件
共 1 条。
文件拖入
- 签名:
无 文件拖入(子程序指针 回调) - 说明:注册文件拖入回调;传 0 清除。每拖入一个路径、且命中已注册目标时调用一次。
- 参数一│子程序指针 回调: 须指向已定义函数。形参固定为: 函数 名(整数 句柄, 文本 路径) · 句柄:对应 注册() 的返回值(标识符)。 · 路径:完整本地路径(支持中文)。 · 一次拖多个文件会连续回调多次。
拖放类/方法
共 12 条。
注册
- 签名:
整数 注册(组件名 目标) - 说明:为指定窗口或组件开启文件拖入,成功返回唯一标识符(整数句柄),失败返回 0。
- 参数一│组件名 目标: 直接写设计器中的名称,无需引号;「主窗口」=整窗;其它为控件名。
撤销注册
- 签名:
逻辑 撤销注册([整数/整数数组 句柄集合]) - 说明:撤销一个、多个或本对象全部拖放注册。返回逻辑(真=已处理)。
- 参数一│[整数/整数数组 句柄集合]: 省略=撤销本对象全部;整数=撤销指定句柄;整数数组=批量撤销。
取路径列表
- 签名:
文本数组 取路径列表() - 说明:返回最近一次命中本对象注册目标的拖入路径(文本数组)。
取路径数
- 签名:
整数 取路径数() - 说明:返回最近一次拖入的路径个数。
清空路径
- 签名:
无 清空路径() - 说明:清空本对象缓存的最近一次拖入路径列表。
取注册数
- 签名:
整数 取注册数() - 说明:返回本对象当前有效的注册个数。
取句柄列表
- 签名:
通用 取句柄列表() - 说明:返回本对象全部注册句柄(整数数组)。
是否已注册
- 签名:
逻辑 是否已注册(整数 句柄) - 说明:判断指定句柄是否仍为本对象的有效注册。
- 参数一│整数 句柄: 注册() 返回的标识符。
取目标名
- 签名:
文本 取目标名(整数 句柄) - 说明:按句柄取注册时的窗口名或组件名;无效句柄返回空文本。
- 参数一│整数 句柄: 注册() 返回的标识符。
按名称取句柄
- 签名:
整数 按名称取句柄(组件名 目标) - 说明:按目标名查找本对象中第一个匹配的注册句柄;未找到返回 0。
- 参数一│组件名 目标: 与 注册() 时传入的名称一致,无需引号。
启用
- 签名:
逻辑 启用(整数 句柄, 逻辑 是否启用) - 说明:临时启用或停用指定注册(不停用其它目标)。返回逻辑(真=句柄有效)。
- 参数一│整数 句柄: 注册() 返回的标识符。
- 参数二│逻辑 是否启用: 真=接收拖入;假=忽略该目标。
是否启用
- 签名:
逻辑 是否启用(整数 句柄) - 说明:查询指定句柄当前是否启用接收拖入。无效句柄返回假。
- 参数一│整数 句柄: 注册() 返回的标识符。
易错对照
| 错误 | 正确 |
|---|---|
| 类型写成「拖放」 | 必须「拖放类」 |
| 回调签名不符 | 按事件说明写形参 |