1 Axure RP中概念介绍
对于构建高保真原型来说,需要知道事件(Event)、Case、Action等概念。Axure RP中给出这些概念,是为了方便原型的构建,尤其是高保真原型的构建。
事件(Event)是附着于控件或页面上,例如OnClick事件,当鼠标单击某个控件时发生。
当某个事件发生时,可以直接执行相应的Action,也可以分情况(Case)执行相应的Action。有的Axure RP书籍上将Case翻译成用例,我感觉不妥,容易与面向对象分析中的用例混淆。这里翻译成情况更好。一个Case包含两部分:
- 条件。条件的产生利用Axure RP的界面操作,不需手工书写,个别需要填充值的地方才手工输入。各种条件的操作符已全部由Axure RP给出,利用下拉列表框选择使用即可。这里的条件表达式不要与编程语言中的条件表达式相混淆,它是Axure RP独有的一套表达式书写方式,通常关注的是界面上控件或控件间条件关系的表达式,与界面的行为密切相关。
- Action。该词翻译成动作比较贴切。其指的是当本Case的逻辑条件满足时,应该执行的操作。例如设置某个标签(Label)的值。
Target。在设置(定义)某个Case的Action的时候,会用到Target。其指的是某个Action所指向的(作用于)的控件。
2 Axure RP中的具体事件名、Action名
2.1 Axure RP中事件名
事件名 | 含义 |
---|---|
OnClick | 单击事件 |
OnDoubleClick | 双击事件 |
OnContextMenu | 快捷菜单事件 |
OnMouseDown | 鼠标按下事件 |
OnMouseUp | 鼠标按键放开事件 |
OnMouseMove | 鼠标移动事件 |
OnMouseEnter | 鼠标光标进入事件 |
OnMouseOut | 鼠标离开事件 |
OnMouseHover | 鼠标悬停事件 |
OnLongClick | 长时间单击事件 |
OnKeyDown | 键盘按键按下事件 |
OnKeyUp | 键盘按键松开事件 |
OnMove | 移动事件 |
OnRotate | 旋转事件 |
OnResize | 改变尺寸事件 |
OnShow | 显示事件 |
OnHide | 隐藏事件 |
OnFocus | 获得焦点事件 |
OnLostFocus | 失去焦点事件 |
OnSelectedChange | 选中的控件的值改变事件 |
OnSelected | 选中事件 |
OnUnselected | 失去选中事件 |
onLoad | 加载事件 |
2.2 Axure RP中Action名
Axure RP把Action分成了4类,分别是Link action、Widget action、Repeater action、Other action。
Link action包括:
- Open Link
- Close Window
- Open Link in Frame
- Scroll to Widget (Anchor Link)
Widget action包括:
- Show/Hide
- Set Panel State
- Set Text
- Set Image
- Set Selected/Checked
- Set Selected List Option
- Enable/Disable
- Move
- Rotate
- Set Size
- Bring to Font/Back
- Set Opacity
- Focus
- Expand/Collapse Tree Node
其他两类的Action,在此从略。
3 一个完整的控件的事件举例
下图是一个完整的、从Axure RP设计环境中截取的图。该控件是从控件库中的Box绘制而来。其中的双引号中的部分需手动输入,其他的内容是在Axure RP中通过操作界面、下拉框选择而来。
4 关于构建高保真原型方法
在产品经理、需求分析人员特别熟悉Axure RP操作的情况下,利用Axure RP能快速构建一个原型。尤其对于高保真原型来说,所获得的收益更大。针对某个软件项目构建的高保真原型承载了较多的软件需求,并且是用户的大量的真实需求,为后续撰写软件需求规格说明书奠定了良好的基础。
根据快速原型过程模型的要求,一定要快速构建。利用Axure RP能够做到快速构建原型,但这不是唯一的方法。例如,可以用Python语言快速构建原型。相比较利用Python快速构建原型来说,用Axure RP快速构建原型能做到更快速,且学习曲线更低。
利用Axure RP构建高保真模型,需要大量利用Event、Action、Case等,且需要事先从客户那里获得相关需求。因此,需要设计人员熟悉各种Event的含义、Action的含义、产生逻辑表达式的操作方法,对页面中的各个控件(Widget)间的关系整体把控;需要对各种控件,特别是Dynamic Panel、Repeater等控件,有深刻的理解和使用,以使构建的原型更加高保真。