一、简述 
最近再看Qt实现HTTP下载时,看了一下迅雷下载,发现迅雷做的很好,不论是界面还是下载速度都非常不错,今天看到迅雷9新建下载任务一个神奇效果,复制下载url到输入框,迅雷能够自动解析下载文件信息。 
于是十分好奇,便自己用Qt尝试做了一下,忙了一晚上终于做出了一个大概模样。下面看一下效果。

下面是迅雷的效果。

下面是我自己实现的一个效果。

对比上下两张图,可以看出模仿相似度百分之99.9% O(∩_∩)O哈哈~


二、关于迅雷

最早使用迅雷时,我记得当时的版本为迅雷5,界面在当时看来还是相当不错的,当时的设计风格都是边角圆滑式的,界面上各种控件的四个角都是圆弧态,可以参看下面迅雷5的界面。 


后来升级到迅雷7,界面相对扁平化,比之前版本好看很多,也增加了不少功能。


最近由最新的7.9版本升级到9.0版本,打开后让人眼前一亮。全新的UI、全新的布局,界面扁平化风格。Very Nice !

对比一下迅雷7和迅雷9。

  • 迅雷7左边一小块主要是对下载任务进行的一下操作,中间一大块为下载任务列表信息。右边一小块为迅雷提供的信息、视频资源。

  • 从迅雷9界面可以看出改动非常大,左边一小块为对下载任务的操作以及任务列表信息,而右边一整块为迅雷提供的各种信息、视频资源。


迅雷5的界面还显示迅雷自家的任何资源信息,到迅雷7将右边一小块留给了自家的资源信息面板,而到了迅雷9,迅雷就将右边整个界面作为展示资源的版块。

从中可以看到,迅雷自家提供的资源越来越多,同时各种广告也多了起来。

一般情况下,我会使用迅雷下载一些电影或者软件,基本上都是从浏览器中获取下载链接复制到迅雷中直接去下载,很少关注过迅雷提供的一些资源或者广告信息,对我来说可能显得很鸡肋,对于其他用户可能还是十分有必要的,要不然迅雷也不会做出这样的改动。反而我会觉得我只需要关注左边这里的下载任务就够了,这样反而显得更加方便,如果迅雷能够选择让用户选择只显示左边这一部分就很帮了,同时也显得更加简洁。

以上从界面布局方面做了一些自己的见解,在功能上迅雷还是十分不错的,下载速度也Very Nice 。


下面左图是迅雷7的新建任务界面,右图为迅雷9,相对而言,迅雷9界面更加清晰、美观、简洁。

 


今天就迅雷的界面写了一些感受,也正是更新完到迅雷9让我产生了兴趣,就花了点时间对新建任务做了模仿,并且实现了该界面的功能。同时我用Qt实现的新建任务窗口获取文件信息相对迅雷较快。下面可以看一下对比图。

 —– 


从上面应该可以区分出迅雷9和我模仿的新建任务界面(如果看不出来,直接看哪一个获取文件信息快,哪个就是我的,O(∩_∩)O~),这一篇先看效果,下篇将叙述如何实现迅雷9新建任务界面(~ ̄▽ ̄~)

Qt之HTTP之模仿迅雷——根据URL获取文件信息(上)相关推荐

  1. Qt 之 模仿迅雷 根据Url获取文件信息——上

    一.简述 最近再看Qt实现HTTP下载时,看了一下迅雷下载,发现迅雷做的很好,不论是界面还是下载速度都非常不错,今天看到迅雷9新建下载任务一个神奇效果,复制下载url到输入框,迅雷能够自动解析下载文件 ...

  2. 根据url获取文件信息

    代码: String downloadUrl = request.getUrl();//获取文件的原始下载地址 URL url = null; try {url = new URL(request.g ...

  3. Qt总结之一:遍历文件夹和文件目录,并过滤和获取文件信息、后缀名、前缀名(一)

    一.采用递归和QDir实现文件夹下所有文件遍历的方法 #include <QDir> bool FindFile(const QString & path) {QDir dir(p ...

  4. java根据url获取文件流

    最近的一个需求需要根据一个mp3的链接获取文件流上传到内部的存储平台, 记录一下获取文件流的代码吧. pom文件 <dependency><groupId>org.apache ...

  5. java获取url文件格式_本地文件/url获取文件类型

    package com.cjw.baidu.ocr; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringU ...

  6. 【QT】遍历文件夹和文件目录,并过滤和获取文件信息、后缀名、前缀名

    [QT]遍历文件夹和文件目录,并过滤和获取文件信息.后缀名.前缀名 前言: 需要在特定目录或磁盘下查找特定文件 一.筛选目录 (一)单一目录下遍历,筛选特定文件 QDir dir("./Sa ...

  7. C# 根据url获取文件流流

    /// <summary>/// 根据url获取流/// </summary>/// <param name="url">路径</para ...

  8. Java 根据网络地址URL获取文件

    一.功能需求 系统需要根据提供的文件地址URL获取该文件,代码实现如下: 二.解决办法 /*** 根据URL地址获取文件* @param path URL网络地址* @return File*/pri ...

  9. python selenium根据url获取cookie信息

    在python中如何用 selenium获取指定页面的cookie信息呢? 注意:本实例仅适用于Chrome浏览器,其它浏览器不支持,需要下载对应Chrome浏览器版本的浏览器驱动包. 目录 1.查看 ...

最新文章

  1. 位置偏移问题 绘制_AutoCAD教程之绘制螺栓连接组合图
  2. Arch安装zsh以及通过 Oh-My-ZSH! 开源项目的配置
  3. 光速OFFER,为AI奔赴,商汤2022届校招提前批正式启动!
  4. 4.类型设计规范《.NET设计规范》
  5. Python笔记-Collection中Iterable、Iterator和Generator的区别
  6. 安卓APP_ 布局(2) —— RelativeLayout相对布局
  7. 程序员必修课:为什么非要用 Python 做数据分析?Excel 不好吗?
  8. Android Studio控制台输出乱码,编译时期输出乱码,outpot乱码解决
  9. Beaglebone Black – 连接 GY-91 MPU9250+BMP280 九轴传感器(2)
  10. 可见面判别算法---深度排序算法
  11. 6.2016年国赛A题“系泊系统的设计”
  12. Spring IOC与AOP实现原理
  13. visio2003中、origin中、matlab中,字体的大小以pt为单位,与word中的几号字大小是如何对应?
  14. 数据结构课设 (快餐店 POS 机计费系统、成绩分析、算术表达式)
  15. 基于Spring Boot房产销售平台的设计与实现【源码+论文】分享
  16. windows bat脚本教程
  17. 恒讯科技讲解:量子云计算是什么?
  18. CSDN文章点赞、收藏、评论后到底发生了什么?简要分析HTTP交互机制
  19. 建立区域经济大脑,驱动产业创新发展
  20. 对于javaScript设计模式的认知与学习

热门文章

  1. semver语义化版本号
  2. 听飞狐聊JavaScript设计模式系列07
  3. android:#FFFFFFFF 颜色码解析
  4. 建立一个mysql 文件命令是_使用命令行创建数据库
  5. Linux gtk开发教程,使用GTK+和Glade快速开发Linux图形界面
  6. 三维点云学习(1)下-点云体素降采样
  7. Active Directory 域服务(AD DS)
  8. HDU-1255 覆盖的面积 矩形面积交
  9. ORA-01427: 单行子查询返回多个行 出现原因及对应防止措施
  10. [原]防火墙安装配置(日志)