【发布时间】:2011-06-23 22:58:19
【问题描述】:
什么是 UI 状态?你能给我一个类似的例子吗?它是指诸如跟踪打开的标签之类的事情吗?
【问题讨论】:
-
我早就没有学习了。 :) 我正在阅读这篇文章,但我不确定该怎么想:codeproject.com/KB/aspnet/ArchitectureComparison.aspx
标签: user-interface theory state
什么是 UI 状态?你能给我一个类似的例子吗?它是指诸如跟踪打开的标签之类的事情吗?
【问题讨论】:
标签: user-interface theory state
我认为这个想法是 应用程序 具有状态,并且 UI 反映了该状态。
因此,当您的应用启动时,它会如下所示
1) 初始状态(应用已启动)
2) 加载初始数据(“加载状态”)
3) 准备好进行交互(“就绪状态”)
现在假设用户通过打开表单开始交互。
4) 用户打开表单并转到('编辑表单状态')
用户可以取消或保存,所以现在状态不同了。如果取消
5) 'editing form state' 接收到取消事件,丢弃更改,返回“Ready”
如果保存
5) 应用进入“正在保存”状态,完成后返回“就绪”或“错误”
这种概念化的好处在于它允许您的“状态图”根据状态更新应用程序元素。例如,在“加载”或“保存”状态下,您可以屏蔽 UI 或禁用按钮。关键是视图不需要知道状态,它所做的只是坐在那里被操纵。它是管理视图在任何给定时间做什么的状态代码。
请注意,UI 中的视图具有状态也是正确的。例如,按钮可以具有“mouseenter”、“mouseexit”、“clickdown”、“clickup”、“inactive”等状态。当 UI 中的自定义视图根据不同的方式呈现自身时,可以认为它具有状态在它所代表的数据上。
你可能想看看
http://www.wisdom.weizmann.ac.il/~harel/papers/Statecharts.pdf
【讨论】:
UI 状态仅表示 UI 的状态。跟踪控件中的内容以及可见的内容确实是 UI 状态的一部分。
【讨论】: