YStudio Y++

拖放类

Y++ / YStudio 开发文档 · 一点滴

类对象支持库(不是扁平命令)。路径:支持库 → 扩展类库 → 拖放类。

类型名必须写完整「拖放类」。声明时自动创建,一般无需再调 创建*。

硬约束

  1. 类型名必须写「拖放类」。
  2. 按窗口/组件名注册;回调在 UI 线程。
  3. 方法调用必须带括号。

快速开始

拖放类 td
函数 收到文件(整数 句柄, 文本 路径) {
    输出(路径)
}
启动() {
    整数 h = td.注册(主窗口)
    td.置拖入文件(h, &收到文件)
}

拖放类/创建

共 1 条。

创建拖放

  • 签名:通用 创建拖放()
  • 说明:创建一个拖放对象。一般直接写「拖放类 td」即可(声明时自动创建);「创建拖放()」仅在需要显式赋值时使用。

拖放类/事件

共 1 条。

文件拖入

  • 签名:无 文件拖入(子程序指针 回调)
  • 说明:注册文件拖入回调;传 0 清除。每拖入一个路径、且命中已注册目标时调用一次。
  • 参数一│子程序指针 回调: 须指向已定义函数。形参固定为: 函数 名(整数 句柄, 文本 路径) · 句柄:对应 注册() 的返回值(标识符)。 · 路径:完整本地路径(支持中文)。 · 一次拖多个文件会连续回调多次。

拖放类/方法

共 12 条。

注册

  • 签名:整数 注册(组件名 目标)
  • 说明:为指定窗口或组件开启文件拖入,成功返回唯一标识符(整数句柄),失败返回 0。
  • 参数一│组件名 目标: 直接写设计器中的名称,无需引号;「主窗口」=整窗;其它为控件名。

撤销注册

  • 签名:逻辑 撤销注册([整数/整数数组 句柄集合])
  • 说明:撤销一个、多个或本对象全部拖放注册。返回逻辑(真=已处理)。
  • 参数一│[整数/整数数组 句柄集合]: 省略=撤销本对象全部;整数=撤销指定句柄;整数数组=批量撤销。

取路径列表

  • 签名:文本数组 取路径列表()
  • 说明:返回最近一次命中本对象注册目标的拖入路径(文本数组)。

取路径数

  • 签名:整数 取路径数()
  • 说明:返回最近一次拖入的路径个数。

清空路径

  • 签名:无 清空路径()
  • 说明:清空本对象缓存的最近一次拖入路径列表。

取注册数

  • 签名:整数 取注册数()
  • 说明:返回本对象当前有效的注册个数。

取句柄列表

  • 签名:通用 取句柄列表()
  • 说明:返回本对象全部注册句柄(整数数组)。

是否已注册

  • 签名:逻辑 是否已注册(整数 句柄)
  • 说明:判断指定句柄是否仍为本对象的有效注册。
  • 参数一│整数 句柄: 注册() 返回的标识符。

取目标名

  • 签名:文本 取目标名(整数 句柄)
  • 说明:按句柄取注册时的窗口名或组件名;无效句柄返回空文本。
  • 参数一│整数 句柄: 注册() 返回的标识符。

按名称取句柄

  • 签名:整数 按名称取句柄(组件名 目标)
  • 说明:按目标名查找本对象中第一个匹配的注册句柄;未找到返回 0。
  • 参数一│组件名 目标: 与 注册() 时传入的名称一致,无需引号。

启用

  • 签名:逻辑 启用(整数 句柄, 逻辑 是否启用)
  • 说明:临时启用或停用指定注册(不停用其它目标)。返回逻辑(真=句柄有效)。
  • 参数一│整数 句柄: 注册() 返回的标识符。
  • 参数二│逻辑 是否启用: 真=接收拖入;假=忽略该目标。

是否启用

  • 签名:逻辑 是否启用(整数 句柄)
  • 说明:查询指定句柄当前是否启用接收拖入。无效句柄返回假。
  • 参数一│整数 句柄: 注册() 返回的标识符。

易错对照

错误 正确
类型写成「拖放」 必须「拖放类」
回调签名不符 按事件说明写形参

相关

回调 · 文件监视