2010-11-13 48 views
15

我是鍵盤快捷鍵的忠實粉絲。如果某些功能或操作沒有快捷方式,我傾向於編寫一個小程序並附上Ctrl + Alt + [key]指向它的快捷方式。設計鍵盤快捷鍵的最佳做法

昨天在使用Visual Studio進行編碼時,我開始思考他們分配快捷方式的程度。有大量的命令,而且大多數都是直觀的,沒有一個與其他系統範圍的組合鍵重疊。唯一的例外是Ctrl + W它激怒了我,因爲它沒有按默認關閉活動標籤。

將鍵盤快捷鍵分配給自己的程序時,應記住哪些最佳做法?

什麼是如此普遍,並且不應當被使用除特定功能的其它 「保留」 組合(當量Ctrl鍵 + 小號Ctrl鍵 + W¯¯ ....)

在小應用程序我相信最好使用Ctrl作爲修飾鍵,但在更大的應用程序中如何?應該有兩個修改鍵(Shift/Alt?)或在Visual Studio中製作?應該移位僅用於逆轉功能(Ctrl鍵 + + 標籤,滾動製表符向後)?或者如何在程序運行時在托盤中最小化運行或根本沒有GUI。應該在這個組合中使用windows-key?

回答

16
  • 開始與常見的Windows綁定:按Ctrl +Ç複製,按Ctrl +小號保存等,當他們嘗試這些最常用的快捷鍵的用戶不應該感到驚訝。

  • 查看與您自己的功能類似的其他應用程序。例如如果你做文字處理(應用文字樣式),然後看Word。如果你有類似繪圖工具的東西,也許看看Photoshop等。

  • 列出當你的程序「完成」時你期望的所有命令。這可能比現在可用的多得多,其中一些命令可能永遠不會生成,但此練習可以幫助您避免在每次發佈時更改熱鍵 - 從一開始就保留它們。

  • 現在,從列表中刪除所有您認爲一天不會使用多少次的命令。例如Ctrl + C因爲「(C)opy」是好的,因爲那可能一小時使用達60次。但是Ctrl + C對於「(C)heck if new verison has been released」是一個糟糕的熱鍵,因爲用戶不太可能希望每週更新一次以上。

  • 如果對使用熱鍵的頻率有疑問,請不要使用。最好爲將來的功能提供大量備用密鑰,而不是捆綁鍵盤上的每個密鑰,然後必須不斷更改綁定。使用更少的熱鍵可以降低用戶的複雜度,您需要進行的測試量以及散佈按鍵做出用戶不想要的事情的機會。如果用戶真的想要一個熱鍵,他們會問這個問題,你可以添加它。但通常只有真正常用的功能需要熱鍵。

  • 繪製一個包含修飾符列的字母電子表格。在網格中輸入您期望的高使用率命令集,併爲每個單元劃分優先級,以使最重要的命令使用最簡單和最明顯的快捷鍵。在很多情況下,你會發現只有一個命令落在特定的鍵上。也嘗試組相關的命令的鍵上,但具有不同(Ctrl鍵/移位/Alt鍵)改性劑(例如Ctrl鍵 + 小號保存,Ctrl鍵 + + 小號節省-所有)。這會讓你看到任何不容易映射到明顯密鑰的命令。考慮如果重命名某些選項可能有助於轉移事物以實現更好的映射(例如,像「選項」,「設置」或「首選項」等同義詞可能會幫助您找到更容易映射到良好組織的命令名稱)

  • 您現在留下的命令不能綁定到最明顯的鍵(例如「Cut」不能綁定到Ctrl + C因爲它用於「複製」,所以在菜單中您通常會將它綁定爲Edit-> cu(T)和Edit - >(C)opy。所以,你可以考慮使用按Ctrl +Ť用菜單mnemnomic方法的一致性(雖然在這個特定的情況下,當然是預先存在的標準,按Ctrl +X =切)。

  • 添加一個鍵綁定系統,以便用戶可以添加/更改熱鍵來自定義其UI。

  • 儘量保持一致。正如你已經指出的那樣,換檔通常用於「反轉導航命令的方向」。選擇時,請按照窗戶慣例(Ctrl切換,Shift擴展)。但主要是,是跨應用程序一致的 - 它並沒有真正在大多數情況下,什麼樣的影響按Ctrl,並移事 + Ctrl鍵具有的操作,但如果可能的話儘量類似的邏輯適用於所有的命令綁定。

  • 小心使用替代作爲修飾符。用戶應該能夠使用Alt在菜單系統中導航。所以,你真的應該只使用Alt鍵結合按Ctrl/,並確保您的熱鍵操作不會破壞正常Alt鍵處理的菜單系統提供。

  • 如果您的程序有很多文本輸入,請避免使用未修改的熱鍵快捷鍵。當你按M做一些事情時,真的很煩人,不僅不會發生這種事情,而且M會出現在用戶界面某個隨機部分的文本輸入字段中!讓它按Ctrl +中號按Ctrl ++中號,很容易避免的問題。這也允許熱鍵在用戶將其輸入焦點放在特定位置時激活命令,避免任何討厭的形式。

  • 如果您使用多鍵序列,則不要混合和匹配修飾符。例如,CTRL + CTRL + 是好的,但CTRL + + CTRL + + 是不好,因爲用戶必須通過序列中途發佈ctrl ctrl + 。 (Visual Studio測試命令,我在跟你說話!)

  • 不要在熱鍵上做任何事情,除非你是輸入焦點應用程序。例如有一定的非常流行的程序,(默認)抓住按Ctrl +一個這樣做的東西非常惱人每當你嘗試在一個不相關的程序選擇所有時間。爲什麼哦爲什麼!?如果您認爲全球熱鍵是一個好主意,那麼將其添加爲用戶可以在需要時打開的選項,以便他們知道熱鍵存在。

  • 我同意Visual Studio有一個很好的默認綁定集。但是在很多方面它的設計很糟糕 - VS2010是我使用過的VS的第一個版本,它並沒有對前一個版本的核心密鑰綁定做出令人沮喪的巨大改變。這通常是升級到新VS版本中最痛苦的部分。我非常高興和驚訝地發現,最常見的功能(如「build」)在VS2010中默認仍然在相同的熱鍵上!希望他們將與他們堅持現在一段時間...

2

快捷方式必須是令人難忘的,這就是爲什麼按Ctrl + 小號(保存)和按Ctrl + ñ(新)工作得很好,一些程序員已經儘量採取它作爲不同更改快捷方式語言。 (Ctrl鍵 + 粗體是Ctrl鍵 + ˚F在舊版本的MS收件費特)。同樣,X類似於剪刀和V的插入標記,因此剪切和粘貼。

在更先進的水平,防止無法挽回的意外效果:更危險的命令,需要更復雜的安全防護:像按Ctrl + Alt鍵+德爾相當困難的小心輸入。

另外請注意,Alt是菜單訪問鍵。

2

不應該被忘記一兩件事:按Ctrl + Alt鍵+數字/字母字母組合可以更好地避免因爲許多鍵盤佈局有一個AltGr鍵盤修改器,它也被觸發Ctrl + Alt

例如鍵入一個德國鍵盤上的@字符,您可以鍵入的AltGr + Q = 按Ctrl + Alt鍵+Q

更多信息:http://blogs.msdn.com/b/oldnewthing/archive/2004/03/29/101121.aspx