2009-02-24 18 views
19

Bir arkadaş, "Ctrl + +" öğesini bir ToolStripMenuItem numaralı kısayol tuşu olarak nasıl atayacağımı bulmakta zorlanıyordu. Keys.OemPlus anahtarının çalışacağını ve kısayol için görüntü dizesinin ayarlanması gerektiğine işaret ettim, ancak Keys numaralandırma beni gizler.System.Windows.Forms.Keys numaralandırmadaki "OEM" anahtarları nelerdir?

Bu "OEM" anahtarlarla yapılan anlaşma nedir? Biraz arama yaptım ve sanki anahtarlar sadece Win2k ya da daha sonra destekleniyor, ama Win2k'den önce birkaç on yıldır anahtar kullanmış olduğumdan saçma gibi görünüyor. Neden "OemEquals" yok? Keys numarasından tamamen eksik olan başka anahtarlar var mı?

Çoğunlukla bu özel adlandırılmış değerleri var neden bir cevap arıyorum ama diğer sorular hakkında tartışma duymak isteriz. Klavyemde artı işareti, Keys.OemPlus kullanarak ve Shift değiştirici tuşunu kontrol etmenin Ctrl + = tıklatılıp basılmadığını söyleyen bir OK işareti olduğundan emin olmak güvenli midir? İhmal edilen başka anahtarlar var mı?

Not şudur değil bir WPF soru, (Key Çerçeve Tasarım Rehberi göre yanlış adlandırılmış olsa;) System.Windows.Forms.Keys ve System.Windows.Input.Key numaralandırma aynı bakmama rağmen

cevap

25

Windows API ile tanıştırıldılar, WPF'ye özgü değiller.

İlk olarak, bunlar karakter kodları değil, KEY kodlarıdır: klavyenizdeki bir karakteri değil, bir karakteri tanımlar - ör. 'A' karakteri genellikle bir SHIFT tuşunu basılı tutarken veya CAPS LOCK etkinken A tuşuna basılarak oluşturulur.

yerel klavyeler ile değişir anahtarlarıOEM tuşları

. ABD klavyesinin parantez ve parantezleri olduğu yerlerde, Alman klavyeleri umutlu.

(klavyenin) Orijinal Ekipman Üreticisi onların işlevlerini tanımlayan sorumluydu çünkü "OEM" denir.

+2

Çeşitli ortam anahtarlarının OEM anahtarları da olduğuna inanıyorum. –

+0

Yani arka kene '' 'anahtarı Key.BackTick' ama' olmaya olmaması için söylüyorum olmayan ABD klavyelerde yaygın olmadığını olmasıdır Oem3' 'için örneğin sürece hattayım olarak ABD düzeni, her zaman arka tuşa basmalı mı? –

1

OEM "Orijinal Ekipman Üreticisi" anlamına gelir) (veya buna nispeten yakın bir şey. Bence WPF'nin biraz platform nötr olmasının bir parçası. Bu sadece bir fikir değil.

İlgili konular