案例73. 全选与取消全选效果

案例来源:

百度音乐-音乐盒

案例效果:

初始状态/取消全选时:(图5-117)

全选后取消任一选项时:(图5-118)

全选/单选全部选中时:(图5-119)

案例描述:

列表中相邻的行具有交替的背景颜色;点击列表中复选框时,可以切换复选框的勾选状态,复选框被勾选时整行变为灰色,取消勾选时恢复默认颜色;列表中的复选框被全部勾选时,列表左下方的全选复选框变为被勾选状态;列表中的复选框有任何一个取消勾选时,全选复选框都会变为未勾选状态;全选复选框被主动勾选时,列表中所有的复选框均被勾选,全选复选框被主动取消勾选时,列表中所有的复选框均被取消勾选。

另外,本案例中当列表中某一行被双击时,该行为播放状态,歌曲名之前显示播放图标,并且显示听相似歌曲与看现场翻唱的按钮。

元件准备:

页面中:(图5-120)

中继器“PlayList”中:(图5-121)

中继器“PlayList”数据集中:(图5-122)

中继器“PlayList”样式设置中:(图5-123)

包含命名:

复选框(用于全选的复选框):SelectAll

文本标签(用于记录列表中复选框被勾选的数量):SelectNumber

中继器(用于歌曲列表):PlayList

组合(用于歌曲信息部分的同一操作):InfoGroup

组合(用于其它按钮部分的同一操作):ButtonGroup

图片(用于播放状态显示的频谱图标):SpectrumIcon

图片(用于显示歌曲MV图标):MVIcon

复选框(用于列表中每行的复选框):SelectItem

文本标签(用于显示歌曲名称):SongName

文本标签(用于显示歌手姓名):SingerName

文本标签(用于显示专辑名称):AlbumName

矩形(用于歌曲信息部分的灰色背景):BackgroundShape

思路分析:

完成歌曲列表的常规信息部分;(操作步骤1)

为播放状态的歌曲显示更多的按钮;显示频谱图标,将歌曲名称置于频谱图标右侧,显示整行灰色的背景;(操作步骤2)

为有MV的歌曲显示MV的图标,MV的图标在歌曲名称右侧间距5像素的位置;(操作步骤3)

双击歌曲列表中任何一项时,取消其它歌曲的播放状态,并将当前歌曲改变为播放状态;(操作步骤4~5)

勾选歌曲列表中任何一项的复选框时,整行显示灰色背景,勾选数量记录增加1;(操作步骤6)

如果勾选数量记录等于列表项的总和,勾选复选框“SelectAll”;(操作步骤7)

取消勾选歌曲列表中任何一项的复选框时,勾选数量记录减少1;取消勾选复选框“SelectAll”;(操作步骤8)

如果歌曲列表中取消勾选的项不是播放状态,取消显示整行的灰色背景;(操作步骤9)

在单击复选框“SelectAll”时判断复选框是否被勾选,如果该复选框被勾选则勾选歌曲列表中所有的复选框;否则,取消勾选歌曲列表中所有的复选框;这里需要注意的是,全选与取消全选只有在主动勾选或取消勾选复选框“SelectAll”时才能够生效,所以触发事件要选择复选框“SelectAll”的【鼠标单击时】而不是【选中时】和【取消选中时】。(操作步骤10~11)

操作步骤:

1、为中继器“PlayList”的【每项加载时】事件添加“用例1”,设置动作为【设置文本】;勾选元件“SongName”,设置文本为【值】“[[Item. SongName]]”;勾选元件“SingerName”,设置文本为【值】“[[Item. SingerName]]”;勾选元件“AlbumName”,设置文本为【值】“[[Item.AlbumName]]”;

2、继续为中继器“PlayList”的【每项加载时】事件添加“用例2”,设置条件判断【值】“[[Item.IsPlay]]”【==】【值】“True”;设置满足条件时的动作为【显示】组合“ButtonGroup”,【显示】图片“SpectrumIcon”,【移动】元件“SongName”【经过】{x}“25”{y}“0”的位置,【选中】元件“BackgroundShape”;

3、继续为中继器“PlayList”的【每项加载时】事件添加“用例3”,设置条件判断【值】“[[Item.MV]]”【==】【值】“Yes”;设置满足条件时的动作为【显示】图片 “MVIcon”,【移动】图片“MVIcon”【到达】{x}“[[s.x+s.text.length*12+5]]”{y}“[[Target.y]]”的位置;公式中“s”为局部变量,其内容为元件“SongName”的对象实例;这里要注意的是:因为,歌曲名称长度不一,所以不能移动MV的图标到固定的位置,在这里移动公式“[[s.x+s.text.length*12+5]]”的含义为“歌曲名称元件的x轴坐标值+歌曲名称字符数量*字符的宽度+5像素”;

事件交互设置:(图5-124)

4、为组合“InfoGroup”的【鼠标双击时】事件添加“用例1”,设置动作为【更新行】于中继器“PlayList”,勾选【条件】,设置条件为“True”(表示全部符合条件),【选择列】为“IsPlay”,设置列的【Value】(值)为“False”;这一步完成了取消列表中所有歌曲的播放状态;

5、继续上一步,添加动作【更新行】于中继器“PlayList”,勾选【This】,【选择列】为“IsPlay”,设置列的【Value】(值)为“True”;这一步完成了将当前歌曲设置为播放状态;

事件交互设置:(图5-125)

6、为复选框“SelectItem”的【选中时】事件添加“用例1”,设置动作为【选中】元件“BackgroundShape”;【设置文本】于元件“SelectNumber”为【值】“[[Target.text+1]]”;公式“[[Target.text+1]]”表示目标元件文字加1;

7、为复选框“SelectItem”的【选中时】事件添加“用例2”,添加条件判断【元件文字】于“SelectNumber”【==】【值】“[[Item.Repeater.visibleItemCount]]”;设置满足条件时的动作为【选中】元件“SelectAll”;公式“[[Item.Repeater.visibleItemCount]]”的返回值为当前项所在的中继器的可见项数量;完成动作设置后,在用例名称上点击,选择菜单中最后一项,将用例的条件判断由“Else If”转换为“If”;

8、为复选框“SelectItem”的【取消选中时】事件添加“用例1”,设置动作为【设置文本】于元件“SelectNumber”为【值】“[[Target.text-1]]”;【取消选中】元件“SelectAll”;公式“[[Target.text-1]]”表示目标元件文字减1;

9、为复选框“SelectItem”的【取消选中时】事件添加“用例2”,添加条件判断【值】“[[Item.IsPlay]]”【==】【值】“False”;设置满足条件时的动作为【取消选中】元件“BackgroundShape”;完成动作设置后,在用例名称上点击,选择菜单中最后一项,将用例的条件判断由“Else If”转换为“If”;

事件交互设置:(图5-126)

10、为元件“SelectAll”的【鼠标单击时】事件添加“用例1”,设置条件判断【选中状态】于“当前元件”(This)【==】【true】,设置满足条件时的动作为【选中】元件“SelectItem”;

11、继续为元件“SelectAll”的【鼠标单击时】事件添加“用例2”,设置不满足操作步骤10的条件时,执行动作为【取消选中】元件“SelectItem”。

事件交互设置:(图5-127)

~~~~~~~~~~~~ 正文结束 下面没了 ~~~~~~~~~~~~

小楼老师全新打造Axure RP 9精品课程,以独有的教学方法与技巧,帮助你以最短的时间高效的完成学习目标。

《Axure RP 9 萌新修炼视频》-----从零入门进阶的优质课程------【点此查看详情】

喜欢 (51)or分享 (0)

axure实现复选框全选_AxureRP8实战手册-案例73(全选与取消全选效果)相关推荐

  1. axure7 地址选择_AxureRP8实战手册-案例7(形状:唯一选中项)

    案例7.   形状:唯一选中项 案例来源: 京东APP-手机充值 案例效果: 整体界面效果:(图1-35) 原型实现效果:(图1-36) 案例描述: 点击每一个金额按钮时,当前按钮变为红色背景与白色字 ...

  2. AxureRP8实战手册-案例1(文本框:带图标文字提示)

    实战案例篇 本篇包含110种实战案例,案例内容均来自互联网知名网站或应用.案例中所包含的基础操作不做详细介绍,如有疑问请参考基础操作篇. 本篇内容由浅至深.前四章围绕基础知识点结合案例进行讲解:最后两 ...

  3. 复选框至少选择一项_如果没有设计师,您至少要选98种材料,学会35项工艺!...

    如果没有设计师, 你 选择 自己装修 恭喜您! 你至少要选28种辅材, 至少要了解35项工艺, 至少要购买8种主材, 至少选购62件家具和配饰, 以及 去到100家店铺和将近100人讨价还价, 购买近 ...

  4. 获得勾选框 html,是否可以在HTML中选中或未选中的勾选框中收集数据?

    此代码应该帮助你! Questions []是一个数组,其中包含所有输入字段, getElementsByName遍历所有具有相同名称的元素(例如,所有元素都具有相同名称的电子邮箱),然后找出哪个元素 ...

  5. win7电脑,勾选“显示隐藏的文件、文件夹和驱动器”后自动取消勾选的解决方法...

    步骤1.HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\explorer\Advanced\Folder\Hidden\SHO ...

  6. axure实现复选框全选_jq简单的全选、反选和全不选效果

    jquery是很实用和方便的前端效果库,可以让我减少很多的操作和节省很多的时间.今天,我们来说一下jq的全选.全不选和反选效果,本篇讲的是最简单简洁的jq全选.全不选和反选的例子.如果还有什么其他的功 ...

  7. 复选框 全选 以及 获取所有选中的值

    复选框 全选 以及 获取所有选中的值 总结一下 jsp中获取 数据 <%Map<String,List> map = (Map<String,List>)Function ...

  8. 钉钉小程序复选框 全选反选 表单获取内容有误处理

    问题描述 我的每一个复选框 是 利用 data声明的数组进行循环 遍历出来的 然后当我点击全选及反选的时候  我操作了data中的item  遍历修改了 ischeck属性  页面上也是利用这个属性显 ...

  9. 判断复选框checkbox是否被选中,及全选实现

    判断checkbox是否被选中 在用vue实现购物车的选中功能时,总价变为只计算选中商品的总价,出现无法判断复选框是否选中的问题. 最后发现应该用document.getElementById去获取i ...

最新文章

  1. 【“零起点”--百度地图手机SDK】如何添加地图图层+按钮事件+水平垂直布局?...
  2. nginx 学习笔记(1) nginx安装
  3. HashMap实现相同key,对value的操作
  4. Hamburger Steak 贪心-锅子问题-先求最小耗时再贪心
  5. Path和ClassPath差异
  6. Android--OkHttp理解系列(一)
  7. 1.8 其他正则化方法
  8. Visual Basic里与Print有关的函数
  9. 【技巧】LeetCode 86. Partition List
  10. 软件项目管理 案例教程复习要点
  11. 数据结构面试、数据结构考研复试——常见问题以及回答
  12. UE4中实现PBKDF2加密验证
  13. 此程序被组策略阻止,有关详细信息请联系管理员
  14. 公摊面积用计算机怎么计算,公摊面积计算(公摊面积计算器)
  15. python爬虫详细-Python爬虫|Python爬虫入门(一):爬虫基本结构简单实例
  16. 移动互联网创业:美国不代表全球
  17. 程序人生,心态变化!
  18. 自媒体多账号发布工具大全,快来看看
  19. metamask 最新版官方版
  20. Java HashSet和Java HashMap

热门文章

  1. 开发者应警惕的七种糟糕职业规划错误
  2. 反编译查看源码dex2jar
  3. PureMVC(AS3)剖析:设计模式(二)
  4. CentOS 6.0安装JDK7
  5. 如何删除隐藏着的网卡
  6. HALCON示例程序color_simple.hdev在HSV空间筛选黄色线
  7. C#中数据流(文件流、内存流、网络流等)相关知识点梳理
  8. python怎么用lambda和map函数_Python之lambda匿名函数及map和filter的用法
  9. @value 静态变量_面试官:为什么静态方法不能调用非静态方法和变量?
  10. linux java usb 串口_2019-11-02 Linux下USB-串口的使用