别告诉我你不知道

别告诉我你不知道可以使用键盘的 Shift 和 Ctrl 来多选表格行,因为这个在 Windows 文件资源管理器中的常用操作,此时的画风是这样的:

这个动图中进行了如下操作:

1. 选中【董婷婷】

2. 按下 Shift 键,点击【唐超】,此时会选中【董婷婷】和【唐超】之间的全部行

3. 按下 Ctrl 键,点击【康颖颖】,此时会取消选中【康颖颖】

4. 按下 Ctrl 键,点击【董国】,此时会选中【董国】

在这个例子中,综合使用了 Shift 和 Ctrl 和进行表格行的选择,这样可以方便快捷的选取我们所需要的行。

向Windows文件资源管理器看齐!

不过,在进行 Shift 多选时,我们会把每次最后点击的行作为下一次多选的起始行,此时的效果是这样的:

这幅动态的操作是这样的:

1. 选中【刘国】

2. 按下 Shift 键,点击【黄婷婷】,此时会选中【刘国】和【黄婷婷】之间的全部行

3. 按下 Shift 键,点击【徐鹏】,此时会选中【黄婷婷】和【徐鹏】之间的全部行

而这个逻辑和 Windows 文件资源管理器的实现不一致,来看下 Windows 下的选中逻辑:

这里的操作是这样的:

1. 选中【Block】

2. 按下 Shift 键,点击【DataModel】,此时会选中【Block】和【DataModel】之间的全部行

3. 按下 Shift 键,点击【Form】,此时会选中【Block】和【Form】之间的全部行

经过一番思考,我们还是决定和 Windows 文件资源管理器保持一致,毕竟这是大家所熟知和最常用的功能。

新版本(v5.6.0)的改进

在新版本中,我们设定了如下三个规则:

-规则一:最后选中的行作为下次Shift键多选的起始行。
-规则二:使用Shift键多选时,如果起始行处于选中状态,在不改变起始行。
-规则三:使用Ctrl键点选行时,不管行是被选中还是取消选中,本行都作为下次多选的起始行。

看似有点绕口,不过都是为了向  Windows 文件资源管理器看齐,现在再来看看 Shift 多选的操作:

这幅动态的操作是这样的:

1. 选中【刘国】

2. 按下 Shift 键,点击【黄婷婷】,此时会选中【刘国】和【黄婷婷】之间的全部行

3. 按下 Shift 键,点击【徐鹏】,此时会选中【刘国】和【徐鹏】之间的全部行

是不是更合情合理一点。

至于上面的规则的第三点【使用Ctrl键点选行时,不管行是被选中还是取消选中,本行都作为下次多选的起始行】,这个的确有点奇怪,不过看了Windows下的动图你就明白了:

这里的操作是这样的:

1. 选中【Block】

2. 按下 Shift 键,点击【DataModel】,此时会选中【Block】和【DataModel】之间的全部行

3. 按下 Ctrl 键,点击【Config】,此时会取消选中【Config】

4. 按下 Shift 键,点击【Form】,此时会选中【Config】和【Form】之间的全部行

注意最后一个操作,在第3个步骤时,【Config】目录是取消选中的,而第4步操作,则会把【Config】作为起始行。

好吧,我们也照葫芦画瓢,来看看 FineUIPro v5.6.0 中的实现:

详细的操作步骤如下:

1. 选中【刘国】

2. 按下 Shift 键,点击【黄婷婷】,此时会选中【刘国】和【黄婷婷】之间的全部行

3. 按下 Ctrl 键,点击【康颖颖】,此时会取消选中【康颖颖】

4. 按下 Shift 键,点击【杨婷婷】,此时会选中【康颖颖】和【杨婷婷】之间的全部行

希望你能喜欢本次的更新。

加入知识星球下载FineUIPro/Mvc/Core的基础版

不忘初心,砥砺前行!

【新特性速递】优化Shift/Ctrl行多选逻辑,和Windows的文件资源管理器保持一致!的更多相关文章

  1. ActiveReports 11 新特性速递

    又到了一年一度,翘首期盼的ActiveReports11 即将发布,ActiveReports 10 表控件横空出世,成为中国式复杂报表的救星后,ActiveReports11 又会有哪些令人惊奇的新 ...

  2. 【新特性速递】单元格导航(上下左右键,TAB键和ENTER键)

    上下左右按键 其实单元格导航(上下左右按键,需要启用表格的ShowSelectedCell属性)一直都存在,只不过之前的版本(v5.5.0)有一些小的BUG. BUG1 比如锁定列存在时,上下左右键只 ...

  3. 【新特性速递】FineUIPro/Mvc/Core 全新移动端访问体验(示例首页)!

    移动端支持 虽然 FineUIPro 早在 2016 年就已经完成对移动端的适配工作,并新增了 50 多个官网示例. 并且,我们也新增了一个移动端的首页 http://pro.fineui.com/m ...

  4. FineUIMvc新特性速递(大间距模式,隐藏菜单垂直滚动条)

    即将发布的 FineUIMvc 新版本会引入两个重要的特性,用来提升用户体验,现在就来先睹为快吧: 大间距模式 我们已经支持的显示模式有:紧凑模式,普通模式,大字体模式. 紧凑模式: 普通模式: 大字 ...

  5. 【新特性速递】树控件结构由单层 TR 改为 TR-TD-TABLE 层级嵌套

    FineUIPro/Mvc/Core的下个版本(v6.1.0),我们对树控件进行了优化,由原来的单层 TR 改为 TR-TD-TABLE 层级嵌套,从而做到表里如一. 上个版本(v6.0.0),我们对 ...

  6. 【新特性速递】CSS3动画增强

    FineUIPro/Mvc/Core的下个版本(v6.1.0),我们对多个地方的CSS3动画进行了增强,使得用户体验更好. 1. 树控件启用EnableSingleExpand时,使得展开动画和折叠其 ...

  7. 【新特性速递】树表格结构由单层 TR 改为 TR-TD-TABLE 层级嵌套!

    由于历史原因,在之前实现树表格时,我们有点偷懒,本来应该是层级嵌套的树结构,被我们硬生生的拉平了,请看: 可以看到,basic目录的子节点和basic是在同一级别的,因为此目录尚未展开,所以这些子节点 ...

  8. 【新特性速递】F.doPostBack的说明文档

    FineUIPro/Mvc/Core的下个版本(v6.1.0),我们对客户端JS函数 F.doPostBack 进行了增强,并增加说明文档. 如果你还没有查阅过FineUI的客户端文档,可以收藏下这个 ...

  9. golang1.16新特性速览

    今天是假期最后一天,明天起大家也要陆续复工了.golang1.16也在今天正式发布了. 原定计划是2月1号年前发布的,不过迟到也是golang的老传统了,正好也趁着最后的假期快速预览一下golang1 ...

随机推荐

  1. Win32 程序开发:窗口类结构体 WNDCLASS 和 WNDCLASSEX

    一.窗口类结构体简介 窗口类结构体包含了窗口的各种参数信息.比如:窗口的图标.菜单栏.背景颜色.窗口的消息处理等等. 窗口类结构体有两个:WNDCLASS(早期版本) 和 WNDCLASSEX(新版本 ...

  2. HTML连载50-伪元素选择器、清除浮动方式五

    一.伪元素选择器 1.什么是伪元素选择器 伪元素选择器作用给指定标签的内容前面添加一个子元素,或者给指定标签的内容后面添加一个子元素. 2.格式: 标签名称::before{ 属性名称:值: } 给指 ...

  3. copy_from/to_user详解

    参考:http://www.wowotech.net/memory_management/454.html 宋大侠的文章精彩,郭大侠的评论也精彩. 结论简单摘录如下: 无论是内核态还是用户态访问合法的 ...

  4. docker-mysql-使用docker运行mysql8

    1, 下载镜像, 我用的是8 docker pull mysql: 2, 启动镜像 docker run \ --name mysql8 \ -p : \ -v /Users/wenbronk/Con ...

  5. VS2019安装好后,经常打不开软件没反应解决方法

    原文地址:https://blog.csdn.net/FL1623863129/article/details/89013137 VS2019于昨日正式发布,博主立马下载一个专业版尝尝鲜,但是发现项目 ...

  6. 练手WPF(二)——2048游戏的简易实现(上)

    1.创建游戏界面编辑MainWindow.xaml,修改代码如下: <Window.Resources> <Style TargetType="Label"> ...

  7. vs code搭建Django环境

    在网上找了很多博客,看了vs code的官方文档,最终拼凑起来,终于搭建起来了djangode开发虚拟环境(win10下) 一.新建项目文件夹 F:\Python\temp\django_demo(例 ...

  8. 如何让Python爬虫一天抓取100万张网页

    前言 文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者: 王平 源自:猿人学Python PS:如有需要Python学习资料的 ...

  9. python+java蓝桥杯ACM日常算法题训练(一)10基础题

    目录 1.简单的a+b 2.第一个HelloWorld程序! 3.三个数最大值 4.密码破译 5.母牛的故事 6.7.8.9.10 @(这里写自定义目录标题) 算法题训练网站:http://www.d ...

  10. python爬虫三大解析库之XPath解析库通俗易懂详讲

    目录 使用XPath解析库 @(这里写自定义目录标题) 使用XPath解析库 1.简介   XPath(全称XML Path Languang),即XML路径语言,是一种在XML文档中查找信息的语言. ...