易语言只自带一个bt下载支持库,直接下载没有命令,需要几个参数.图片代码在下面
组件:编辑框2个,超级按钮3个,标签3个,进度条1个,时钟1个.
代码:
.版本 2.支持库 downlib
.支持库 iext2
.支持库 shell
.程序集 窗口程序集1
.程序集变量 下载参数, 任务参数
.程序集变量 下载任务, 下载对象
.程序集变量 下载状态, 整数型
.程序集变量 下载信息, 字节集
.程序集变量 文件大小, 双精度小数型
.子程序 __启动窗口_创建完毕
.子程序 _超级按钮_接收_被单击
.局部变量 下载地址, 文本型
.如果真 (编辑框1.内容 = “”)
信息框 (“没有输入下载地址”, 0, , )
返回 ()
.如果真结束
.如果真 (编辑框2.内容 = “”)
信息框 (“没有选择保存途径”, 0, , )
返回 ()
.如果真结束
下载地址 = 删首尾空 (编辑框1.内容)
下载参数.类型 = #传送常量.下载
下载参数.文件地址 = 下载地址
下载参数.线程等待超时 = 1000
下载参数.默认线程数 = 3
下载参数.本地文件路径 = 编辑框2.内容
下载参数.连接超时 = 5000
下载参数.发送超时 = 5001
下载参数.接收超时 = 10000
下载参数.接收大小 = 10240
下载参数.交互回调函数 = &交互回调函数
超级按钮_接收.禁止 = 真
下载任务.增加新任务 (下载参数)
.子程序 _超级按钮_浏览_被单击
编辑框2.内容 = 浏览文件夹 (“选择本地保存途径”, )
.子程序 交互回调函数, 整数型
.参数 消息类型, 整数型
.参数 线程信息, 整数型
.参数 参数3, 整数型
.参数 参数4, 整数型
.参数 对象信息, 整数型
.判断开始 (消息类型 = #传送常量.下载上传开始)
文件大小 = 参数3
.判断 (消息类型 = #传送常量.下载上传结束)
信息框 (“下载完成”, 0, )
结束 ()
.判断 (消息类型 = #传送常量.新下载线程启动)
.判断 (消息类型 = #传送常量.下载线程继续下载)
.判断 (消息类型 = #传送常量.线程正常结束)
.判断 (消息类型 = #传送常量.线程异常结束)
.判断 (消息类型 = #传送常量.存在同名文件)
.判断 (消息类型 = #传送常量.收到数据)
.判断 (消息类型 = #传送常量.下载数据范围)
.默认
.判断结束
返回 (0)
.子程序 _时钟_周期事件
.如果真 (超级按钮_接收.禁止 = 真)
.如果 (文件大小 = 0)
标签.标题 = “已完成:0%”
.否则
标签.标题 = “已完成:” + 数值到格式文本 (下载任务.取已下载长 () ÷ 文件大小 × 100, 0, 假) + “%”
.如果结束
进度条.位置 = 四舍五入 (下载任务.取已下载长 () ÷ 文件大小 × 100, 0)
.如果真结束
.子程序 _超级按钮_取消_被单击
下载参数.类型 = #传送常量.下载上传结束
超级按钮_接收.禁止 = 假
进度条.位置 = 0
标签.标题 = “用户取消”
工具--支持库配置--勾选网络传送支持库。点确定。.版本 2
.支持库 downlib
.程序集 窗口程序集1
.程序集变量 任务, 任务参数
.程序集变量 下载限速, 整数型
.程序集变量 下载对象, 下载对象
.版本 2
.子程序 _启动窗口_创建完毕
任务.类型 = 4096
任务.文件地址 = “http://www.abc.com/123.exe(这里换成你的下载地址)”
任务.本地文件路径 = "C:\123.exe(这里填写放到本地的路径)"
任务.默认线程数 = 5
下载对象.增加新任务 (任务)
.版本 2
.子程序 _时钟1_周期事件
标签1.标题 = “总速度:” + 取总下载速度()
标签2.标题 = “任务速度:” + 到文本 (下载对象.取下载速度 ())
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)