2011-06-23 79 views
5

什麼是UI狀態?你能給我舉個例子嗎?它是否涉及諸如跟蹤哪些標籤打開的事情?什麼是UI狀態?

+0

我很久以前就讀書。 :)我正在閱讀這篇文章,我不完全確定該怎麼想:http://www.codeproject.com/KB/aspnet/ArchitectureComparison.aspx – Tower

回答

4

我認爲這個想法是,應用程序有狀態,用戶界面反映了這種狀態。

所以,當你的應用程序啓動它會像下面

1)初始狀態(應用程序啓動時)
2)加載初始數據(「加載狀態」)
3)準備好交互( 「就緒狀態」)

現在讓我們說用戶通過打開表單來開始交互。

4)用戶打開形式,轉移到(「編輯形式狀態」)

用戶可以取消或所以現在的狀態發散保存。如果取消

5)「的編輯形式的國家」收到取消事件,丟棄的變化,並回到「準備就緒」

如果保存

5)該應用程序進入到「保存」狀態,那麼當完成後返回到「就緒」或「錯誤」

這個概念化的好處是,它允許你的'狀態圖'根據狀態更新應用程序元素。例如,在「加載」或「保存」狀態下,您可以屏蔽UI或禁用按鈕。關鍵是觀點不需要知道狀態,它所做的只是坐下來操縱。它的狀態代碼管理哪些視圖在任何時候都在做什麼。

請注意,您的用戶界面中的視圖也具有正確的狀態。例如,一個按鈕可以具有諸如'mouseenter','mouseexit','clickdown','clickup','inactive'等等的狀態。當UI中的自定義視圖可以被視爲具有不同的呈現狀態時的狀態關於它所代表的數據。

你可能想看看

http://www.wisdom.weizmann.ac.il/~harel/papers/Statecharts.pdf

1

UI狀態僅僅意味着UI的狀態。跟蹤控件中的內容以及哪些可見的確實是UI狀態的一部分。