欢迎来到小居数码网-一家分享数码知识,生活小常识的网站,希望可以帮助到您。

当前位置:生活小常识 > 数码知识 >
优质

axure中继器函数(axure中继器的使用方法)

数码知识

周毅力优秀作者

原创内容 来源:小居数码网 时间:2024-07-30 19:00:01 阅读() 收藏:25 分享:57

导读:您正在阅读的是关于【数码知识】的问题,本文由科普作家协会,生活小能手,著名生活达人等整理监督编写。本文有1678个文字,大小约为7KB,预计阅读时间5分钟。

昨天看了大神RAEDME大鹏

axure中继器的使用方法

相信很多和我一样的,看了大神的原理,却苦于难实现的,捂脸jpg。大神的实践讲解总是很少。。。

准备工作,打开你电脑的axure,拉出两个控件(表格和中继器),表格保留一行,左右填充“上月”和“下月”,中间命名为“当前”;再拉出一个表格,保留一行7列,分别填充“日 一 二 三 四 五 六”,设置单元格40*40(这个大小随意设置);中继器命名为“日历”,双击中继器,进入详细页面,设置矩形为40*40(宽度与星期的单元格保持一致,美观),命名为“日历详情”,给方格添加交互状态(选中控件,右键,添加鼠标划入,选中,禁用的状态),中继器属性区添加42行空白内容,中继器样式选择水平布局,每行7个(对应周日-周六)。

以上,准备部件放置完成,请看下图实践:

接下来详细说明下实践原理,看过大神的原理介绍并能吃透的,自动下滑页面看实践,如果连实践也会的,那你就关了此页面吧(不要看妹纸献丑了,捂脸.jpg)

原理篇

原型分成上下两部分,上面控制月份变化,下面控制对应月份的详细日期显示。

页面加载完成后,日历显示当前月份日期,当前时间(举栗子:2017/3/9),当天时间被选中高亮,非当月时间置灰(实现的是显示当前月份内容)。点击”上月“和”下月“,”当前“单元格的时间与下方日历随之变化。

实现上会用到几个日期函数:Now,getDate,getDay,getMonth,addMonths(months),addDays(days),toLocalDateString,index。

Now:返回当前时间详细值,栗子:Thu Mar 09 2017 10:51:59 GMT+0800 (中国标准时间)

getDate:返回月的日期,栗子:9,今天是9号

getDay:返回日期是一周中的第几天(返回值为0-1,对应日-六),栗子:4,今天是周四

getMonth:返回日期所在月份,栗子:3,这个月是3月份

addMonths(months):对月份进行加减,前一个月后一个月的变化,括号内的months数值可正可负,正代表月份向未来变化,负代表月份向过去变化

addDays(days):对日期进行加减,前一天后一天的变化,括号内的days数值可正可负,正代表日期向未来变化,负代表日期向过去变化

toLocalDateString:将时间详细值转化为可读的”年月日“字符串,栗子:Now的时间”Thu Mar 09 2017 10:51:59 GMT+0800“,变成”2017/3/9“

index:位置排序的索引数值,栗子:42个方格,当前选中是第16个放个,则返回16

PS:日期函数示例http://share.yuanxingku.com/tutorial/datefunctions/#p=date_functions

页面添加3个全局变量,表示当前日期的变量”Date_Now“,表示当前日期所在月份的1号日期的变量”Date_Now_1“,表示1号日期的索引序值的变量”Date_Now_1_Index“

Date_Now_1的日期=Date_Now的日期+/-相差的天数,Date_Now的日期=Now获得的数值,相差天数=1-Date_Now的日期,栗子:今天9号,与1号相差8天,即8=9-1

函数表达:Date_Now_1=[[Date_Now.addDays(1-Date_Now.getDate())]]

getDay的”日-六“对应返回”0-6“,首行的索引数值为”1-7“,即索引数值=”0-6“+1(假定了每月的1号出现在第一行或者第二行),Date_Now_1_Index的数值=Date_Now_1的索引值

函数表达:Date_Now_1_Index=[[Date_Now_1.getDay()+1]]

其他日期=日期+/-与1号日期的差值天数,与1号日期的差值天数=其他日期的索引值-Date_Now_1_Index

函数表达:其他日期=[[其他日期.addDays(Item.index-Date_Now_1_Index).getDate()]]

原理绕了一圈,估计你可能有点”黑人问号脸“(我自己都有点绕蒙B了。。。)

下面进行实践,实践与原理对应起来了,就会豁然开朗了~

实践篇

开始给准备好的部件添加用例咯~

分成三部分来说,上面的控制月份的部件,下面中继器的部件,然后是月份与中继器的结合。

在页面载入时,先把3个全局变量赋值,并填充”当前“单元格的内容:

Date_Now=[[Now]],获取当前日期

Date_Now_1=[[Date_Now.addDays(1-Date_Now.getDate())]],获取当前日期月份1号日期

Date_Now_1_Index=[[Date_Now_1.getDay()+1]],获取1号日期的索引值

当前=[[Date_Now.toLocaleDateString()]],当前日期转化为”年月日“格式显示

设置上月,下月点击用例,以上月点击为例:

Date_Now=[[Date_Now_1.addMonths(-1)]],当前日期为向过去移动一个月的1号日期

Date_Now_1=[[Date_Now_1.addMonths(-1)]],当前日期月份的1号向过去移动一个月

Date_Now_1_Index=[[Date_Now_1.getDay()+1]],移动一个月后的1号索引位置

当前=[[Date_Now.toLocaleDateString()]]

下月点击用例同理,将addMonths(-1)修改为addMonths(1)即可。

浏览器预览一下吧,看看点击上月,点击下月,当前的时间显示是否有变化呢?

接着对中继器添加用例。对当前日期高亮选中,非当月日期置灰禁用。点击中继器,右侧属性”每项加载时“添加用例。

添加用例1,高亮当前日期:

用例条件:[[Date_Now_1.addDays(Item.index-Date_Now_1_Index)]]==[[Date_Now]],当前中继器的选项正好是当前日期,有点绕口,慢慢理解。。。

满足条件的进行操作:

日历详细=[[Date_Now_1.addDays(Item.index-Date_Now_1_Index).getDate()]],获得当前日期

日历详细,启用,鼠标划入有状态变化

日历详细,选中状态=true,设置被选中

添加用例2,显示当月的日期:

用例条件:[[Date_Now_1.addDays(Item.index-Date_Now_1_Index).getMonth()]]==[[Date_Now_1.getMonth()]],当前日期所在月份与1号日期月份相同

日历详细,选中状态=false,设置未选中

日历详细,启用,鼠标划入有状态变化

添加用例3,非当月的日期置灰:

用例条件直接为非以上两种情况,无需添加特殊说明

日历详细,禁用,鼠标划入无效果

中继器的用例添加完了,预览下,看看是不是已经能够显示全部日期了呢?

接下来,把月份切换与中继器日期显示结合啦~

以点击上月为例,点击时,更新中继器的内容,且切换到上一个月时,日期定为到1号且高亮(看下电脑的日期,月份切换时,选中高亮每月1号日期)。

选择中继器的”更新行“,添加用例,满足条件[[TargetItem.index>0]]更新内容。

点击下月同理操作。

日历操作就完成了,快去浏览器里预览下吧~

上面就是小居数码小编今天给大家介绍的关于(axure中继器的使用方法)的全部内容,希望可以帮助到你,想了解更多关于数码知识的问题,欢迎关注我们,并收藏,转发,分享。

94%的朋友还想知道的:

(477)个朋友认为回复得到帮助。

部分文章信息来源于以及网友投稿,转载请说明出处。

本文标题:axure中继器函数(axure中继器的使用方法):http://sjzlt.cn/shuma/153010.html

猜你喜欢