2009-11-18 22 views
0

有沒有人知道從應用程序設置/獲取fn-lock的方法,因此您不必按'fn'鍵來獲取F1,F2等。在MacBook或蘋果鍵盤上?我希望始終爲我的應用程序提供它,但要保持系統其餘部分的標準行爲。設置/得到一個macos應用程序的fn鎖

回答

2

這個答案是純粹的猜測,但忍耐着我。

一種可能的情況:根據是否按下fn鍵,鍵盤本身會生成不同的低級掃描代碼。爲了辯論,我們假設如下:

F1: 0x01 
fn-F1: 0x02 

這些低級別的掃描碼通過總線發送到鍵盤驅動程序。鍵盤驅動程序檢查是否設置了「使用F鍵作爲標準功能鍵」首選項,如果是,則在將掃描代碼轉發給應用程序之前交換掃描代碼。因此,鍵盤驅動程序可以做這個映射:

    F1: 0x01 
       fn-F1: 0x02 
"Use F keys" & F1: 0x02 
"Use F keys" & fn-F1: 0x01 

如果是這樣的話,你可能只是想看看如果「使用所有的F鍵作爲標準功能鍵」偏好設置,如果是,再在處理它們之前,請掃描掃描代碼。換句話說,你會撤銷鍵盤驅動程序所做的工作。也許這是你的原始問題。

雖然看着它,我可能是錯的。

+0

是的,鍵盤會生成不同的掃描碼。但是,您可以在鍵盤的系統偏好設置中設置其「狀態」。所以操作系統必須有一種方法來設置fn-lock。 – cellcortex 2009-11-20 16:40:39

+0

我試圖讓我的推測更具體。我希望它有幫助。 – 2009-11-28 22:19:30

相關問題