首页 > 编程知识 正文

快车flashget哪去了(flashget最直接的调用方式)

时间:2023-05-05 12:01:29 阅读:78162 作者:571

主要类别:主框架

1、导航树:创建树中的节点(组合)

2、下载表单:将新表单、表单模型、表单模型分配给表单

3、信息列表:用ListInfo加入四个Info,提交给JList。

4 )新任务界面(Box )、按钮拦截

5、工具栏(5个动作) :新任务、开始、暂停、删除任务、删除已完成的任务

6、浮动窗口:主窗口,弹出菜单(与托盘相同)嵌入在主类中

7、任务栏图标(6个菜单)打开/关闭,新任务,开始、暂停、删除完成、结束

监听程序:

8、点击表单,用鼠标点击监听器,在列表中显示信息。

2 )单击导航树,鼠标单击监听程序,得到选择节点,更新表,得到表模型,模型重置资源对象。

3、关闭窗口拦截。

4、任务栏图标拦截。

启动所有任务并调用download处理程序的resumeDownload ()。

下载完成后,从download上下文资源中删除项目。

请在退出前序列化并保存。 现在断点继续。

1 :

(二)导航树类

将节点提交到树中,设置树,然后设置渲染器。

(三)树渲染器的类设置其JLabel的图标和名称

3 :

(四)表类设置表列宽,设置表列的渲染器

(五)从表模型表具有的列名数组、资源集资源、资源集中返回某个单元格值

(六)表渲染器类设置一个单元格的显示

(七)进度条类(也是渲染器) )。

4 :

(八)新建任务接口类,调用DownloadHandler类的dodownload(r )方法。

(九)浮动窗类菜单和拦截

5 () ) ) )。

(十)节点类:

通用父类:下载节点

下载任务任务节点、下载节点时,下载失败的故障节点、finish节点下载完成

6 :

(十一)信息类)信息列表中的信息对象。

7 :

(十二)资源对象:

资源属性:关联的类部件、

)1)资源id。 )2)地址url。 )3)保存目录文件路径。 (4)变更后的名称fileName

)5)状态状态。 (6)文件大小size。 (7)下载开始时间下载日期

(8)进度Progress.)9)下载速度speed。 (10 )使用的时间costtime ) 11 )剩馀的时间spareTime

) 12 )分割的块集合parts ) 13 )线程数threadSize。 ) 14 )上次下载大小的预长度

为每个块计算当前全长currentLength。

计算下载速度speed。 即,当前全长-上次长度

通过Http连接(通过url )获得文件的总大小size。

计算进展情况后进入进度。 当前总长度/总大小

计算剩馀时间间隔时间。 总大小-当前总长度/速度

在设定状态的情况下,放弃原来的状态,初始化新的状态并执行。

(八)成套刀具

(十三)文件工具类

)1)从地址名称中获得文件名。 )2)删除部件临时文件

(14 )图像工具类

保存图像的地址,并返回图像信息。

(十五)日期工具类

格式化时间

九:

(15 )上下文支持类:

包括下载上下文和下载处理程序

这两个对象都只有一个人,是为了随时随地都能使用。

(十)刁系

(16 )下载工具上下文下载上下文

包含五种状态的当前程序的资源集列表资源

用两种方法访问。

(1)根据状态,得到资源集资源

)2)根据资源id查找具体资源

(17 )下载状态类

接口TaskState,抽象类AbstractState

连接到连接、下载、完成、失败、暂停Pause

完成:停止时间(资源)。 停止计数任务

失败的故障:停止时间(资源)。 停止计数任务

pause :暂停停止时间(资源)。 停止计数任务

十一:

(18 )下载处理类下载处理程序

(1)打开doDownload(r )时间计算任务CountTimeTask,为每个部件分配任务,并打开线程

)2) stopTimer(r ) r )是停止了时间的增加。 resum

eDownload(r)继续原来任务。

(19)下载的线程类DownloadThread

从服务器读资源到本地。资源的状态的设定。主要的逻辑。

十二:

(20)Part拆分成的块。

开始位置begin、这个part文件的长度length、

该Part已经下载的文件长度currentLength、每个Part对应的文件名partName(自动生成)。

注:

Action对象

(1)容器类JMenu、JToolBar会为Action对象自动创建组件,并注册监听器。

jToolBar.add(action);

(2)Swing组件JButton、JCheckBox用构造方法创建。

jButton = new JButton(action);

输入信息:(1)下载地址(2)保存目录(3)文件名(4)线程数

悬浮窗口与任务栏图标都是调用主类中的几个方法。

图片加载步骤:图片路径(String),得到File,通过ImageIO()类读取得到BufferedImage对象。

得到选择树的节点信息步骤:

先是treePath = navTree.getSelectionPath();

然后node = (DefaultMutableTreeNode)treePath.getLastPathComponent();

最后(DownloadNode)node.getUserObject();

Resource属性:

(1)资源id。(2)地址url。(3)保存目录filePath。(4)改后的名称fileName

(5)状态state。(6)文件大小size。(7)下载时间downloadDate

(8)进度progress.(9)下载速度speed。(10)使用的时间costTime(11)剩下的时间spareTime

(12)拆分的块parts(13)线程数threadSize。(14)上一次下载的大小 preLength

对于Resource对象,需要外部传进来赋值的成员就用set方法,否则自己生成。对于状态的设置(起始就是状态的转变),因为设置状态,还要对状态进行处理,所以编写了代码。

自动生成的id。UUID.randomUUID().toString();

根据url作连接:

URL resourceURL = new URL(this.url);

HttpURLConnection urlConnection = (HttpURLConnection)resourceURL.openConnection();

urlConnection.connect();

this.size = urlConnection.getContentLength();

urlConnection.disconnect();

显示出资源:表格的模型、ContextHolder、DownloadContext、Resource。

资源在模型和上下文DownloadContext中是顺序存储的。

行是具体哪个资源,列是资源的成员。

设定资源:主面start()、DownloadHandler的resumeDownload、doDownload、DownloadThread

所谓刷新表格,就是重设资源对象。

表格的getValue()方法调用了模型的getValue()方法。

将DownloadContext上下文对像写到序列化文件中。

反序列化完成后,将DownloadContext中的resources存到模型中,然后表格刷新。

每个资源都要有个花费的时间,故有个计算时间的任务。

urlConnection.getInputStream();

流需要关闭、连接需要关闭、文件需要关闭。

下载过程:服务器端到流InputStream,流到内存缓冲区buffer,在到文件RandomAccessFile。

最后合并part文件。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。