哪種方法更好,爲什麼。關閉時:MsgBox(「您想要保存?」)還是MsgBox(「您想退出不保存嗎?」)
回答
MSGBOX(「文件已被修改,您希望在退出前保存?」)
用下面的選項
- 保存並退出(默認情況下,左側位置)
- 取消(中心位置,左側按鈕旁邊)
- 丟棄(正確的位置,其他按鈕與這一個按鈕之間的間隔量)
The file xxx.txt has been modified.
Do you wish to save before quitting?
+---------+ +--------+ +-------------+
| Discard | <---- SPACING ----> | Cancel | | Save & Quit |
+---------+ +--------+ +-------------+
永遠不要放置丟棄其它按鈕之間,因爲這會產生問題時,誤點擊。 http://www.codinghorror.com/blog/2010/03/the-opposite-of-fitts-law.html
重要的是要注意這是在Mac上詢問的方式;在Windows上按此順序排列的按鈕將不合適。請參閱@ .yahoo.co.jpaqwsykcj3aulh3h1k0cy6nzs3isj的答案。 – josh3736 2010-06-25 01:29:50
不僅在Mac上,而且在(至少)Ubuntu上也是如此。 通常在Windows上詢問的方式是最糟糕的方式(閱讀[Jeff Atwood的博客](http://www.codinghorror.com/blog/2010/03/the-opposite-of-fitts-law.html )),因爲丟棄按鈕位於中心! – alexanderpas 2010-06-26 16:57:58
您應該爲您正在開發的平臺尋找UI指南(搜索「人機界面指南」或「外觀設計指南」)。如果它們存在,則應該遵循它們,以便您的應用可能符合用戶的期望。例如,蘋果有specific guidelines在這種情況下在Mac OS X上做什麼。
這種特殊場景的典型建議是不具有「是」或「否」按鈕,但是描述它們執行的操作的按鈕。例如,您可以顯示如下消息框:「Document a.txt已被修改,保存更改?」按鈕「保存」,「不保存退出」和「取消」。這使得用戶清楚每個按鈕的功能。
你可以在這裏找到[微軟的UX指南](http://msdn.microsoft.com/en-us/library/aa511258.aspx)(這是一個46 MB PDF)。 – josh3736 2010-06-25 01:32:09
取而代之的是/否問題,使用問題與自定義按鈕:
The file blah.txt has been modified. Would you like to save or discard it?
+------+ +---------+ +--------+
| Save | | Discard | | Cancel |
+------+ +---------+ +--------+
+1;這是提出問題的適當方式。這些按鈕是大多數用戶期望它們的地方,並且可以完成用戶期望他們做的事情。 – josh3736 2010-06-25 01:22:41
更重要的是,如果他們實際上不想退出,取消按鈕給用戶一個出路。 – 2010-06-25 01:24:56
破壞性的行爲被置於中間......這是在尋求麻煩! ([我的解決方案](http://stackoverflow.com/questions/3114917/on-close-msgboxdo-you-want-to-save-or-msgboxdo-you-want-to-quit-wo-savin/3114968# 3114968)) – alexanderpas 2010-06-25 01:29:48
您的應用程序應作爲其主要目標之一,永遠不會失去用戶的數據。一種方法是定期保存用戶完成的工作,無需用戶干預。
這是大多數人在現實生活中習慣的範例。當人們在筆記本上寫信時,他們並不認爲論文會問「你是否希望我實際上將這些變化提交給論文?」,他們希望這些變化是永久性的,除非他們明確選擇將它們扔掉。因此,我甚至不會問這個問題,實現一個強大的撤消功能,並且只要(如果是工作會話的開始時)詢問一個新的保存文件名是否是一個新的工作,連續保存出口。
這些想法來自非常有啓發性的Why Software Sucks... And What You Can Do About It。
我強烈反對 - 在大多數其他應用程序中(至少在Windows和Mac上),「是」**保存**作品。如果你切換了Yes和No的含義,你會發現你的用戶非常暴躁。 – josh3736 2010-06-25 01:20:23
@ josh3736:這可能是事實,但根本的問題是不得不提出一個問題。這整個「保存?是/否」範式是有缺陷的。我會刪除該Sentece,因爲它似乎分散主要信息 – 2010-06-25 01:22:23
公平,即使我沒有出售你的要點。我認爲Word有一個很好的模型。它可以保存臨時文件(以防計算機或計算機崩潰),但如果您對所做的更改不滿意,請關閉並放棄。您可能會爭辯不斷地保存並允許用戶恢復到之前的保存狀態,但我認爲這與大多數人在編輯文件時所使用的心智模式不符。 (有多少人知道你*可以*恢復?) – josh3736 2010-06-25 01:26:38
其他我個人認爲重要的是將焦點設置爲取消等效按鈕。我認爲很多用戶習慣於這種提示,只是在沒有閱讀對話內容的情況下點擊輸入。當他們這樣做時,我認爲在大多數情況下,最好是安全並取消而不是提交。
我討厭被問到如果我想保存,親自。如果我需要我可能做到了。如果我忘記了,那麼我使用的大多數程序都具有自動保存功能。
有關尋求UI準則的想法很好,但我同意那些建議最小用戶干預的人。他的關於在紙上寫字的比喻擊中了頭部。現在很多程序都帶有某種版本控制。
- 1. iTextSharp - 關閉時出現「您要保存」提示嗎pdf
- 2. Visual Basic MsgBox退出
- 3. MsgBox關閉表單
- 4. 要保存退出時間
- 5. IE9 JSON數據到Iframe:「您想打開還是保存此文件?」
- 6. Seekbar想要保存進度
- 7. 的AutoIt - 保存到記事本,而不是MSGBOX
- 8. 如何檢測窗口是否有「您想要保存更改」對話框?
- 9. 當計數器是3,6,9,12時,我想彈出一個MsgBox ....... 99
- 10. 多個退出msgbox的
- 11. 您沒有權限調用MSGBOX
- 12. 如何關閉IE9瀏覽器會話,彈出消息「您要打開還是保存文件」
- 13. 保存所有不想要的條目
- 14. MsgBox關閉時做些什麼
- 15. 您可以將Tensorflow變量保存爲字符串還是保存到流中?
- 16. VBA MSGBOX關閉在不到一秒鐘
- 17. 刪除腳本msgbox升級想法?
- 18. 您何時想要使用兩個緩存線程池?
- 19. MsgBox不給出值
- 20. 當我退出一個屏幕時,我應該問:「你想保存嗎?」codeigniter
- 21. 如何停止訪問嘗試保存記錄當您退出
- 22. 理想的實現方式,保存在/文檔中,還是保存在捲上?
- 23. 退出時保存ViewPart
- 24. 防止在關閉時激活Workbook_BeforeClose時從單張彈出MSGBOX
- 25. 當用戶想要關閉它時,從bash腳本退出STDIN
- 26. favicon.ico找不到您想要的東西?
- 27. 您可以將API數據保存/緩存到您自己的數據庫嗎?
- 28. 回車鍵應保存關閉並且退出鍵應該關閉而不保存
- 29. 數據不會保存到Excel文件中,除非MsgBox先出現
- 30. VBA:Workbooks.Save和關閉不保存
可能是主觀 – 2010-06-25 01:10:12
只要確保你沒有采取積極的迴應(即是)並執行消極行動(即退出而不保存) – 2010-06-25 02:27:05
好推理Lasse。 – ChadD 2010-06-25 04:12:40