TranslateAccelerator

TranslateAccelerator işlevi kısayol tuşları menü komutları işler. İşlevi, bir wm_keydown veya wm_syskeydown (belirtilen Hızlandırıcı tablodaki anahtar için bir girdi varsa) wm_command ya da wm_syscommand ileti ve sonra gönderdiği wm_command veya wm_syscommand iletisini doğrudan uygun pencere yordamı için çevirir. İleti penceresinin yordam işleyene kadar TranslateAccelerator dönmez.

 int TranslateAccelerator) hwnd  hWnd, / / işlemek için hedef penceresihaccelhAccTable, / / idare Hızlandırıcı tabloyalpmsglpMsg / / adres iletisi yapısı);
 

Parametreleri

hWnd
Çevrilecek iletileri olan pencere kolu.
hAccTable
Bir Hızlandırıcı tablosuna kolu. Hızlandırıcı tablo gerekir edilmiş LoadAccelerators işlev çağrısı kullanılarak yüklenen veya CreateAcceleratorTable işlevi çağrısı tarafından oluşturulmuş.
lpMsg
GetMessage ya da PeekMessage işlevini kullanarak arayan iş parçacığının iletiyi sıradan ileti bilgilerini içeren bir msg yapısı için işaretçi alınan.

Dönüş değerleri

İşlev başarılı olursa, dönüş değeri sıfır.

İşlev başarısız olursa, dönüş değeri sıfırdır. Genişletilmiş hata bilgilerini için GetLastError.

Açıklamalar

Bu işlev menüleri veya denetimleri, wm_command ya da wm_syscommand mesaj wParam parametresinin yüksek sıralı word tarafından gönderilen iletiler gönderir mesaj ayırt etmek için 1 değerini içerir.

Hızlandırıcı tuş bileşimleri pencere menüsünden öğeleri seçmek için kullanılan wm_syscommand mesajlara çevrilir; tüm diğer Hızlandırıcı tuş bileşimlerini wm_command mesajları tercüme.

TranslateAccelerator , sıfır dışında bir değere ve mesajı tercüme döndüğünde, uygulama TranslateMessage işlevi ileti yeniden işlemeye kullanmamalısınız.

Hızlandırıcı bir menü komutuna karşılık yok.

Hızlandırıcı komutu bir menü öğesine karşılık gelen kullanıcı menüsünü görüntülemek için çalışıyorlardı sanki uygulama WM_INITMENU ve WM_INITMENUPOPUP iletileri gönderilir. Aşağıdaki koşullardan biri geçerliyse, bu ileti ancak gönderilmez:

Belirtilen pencereyi etkin pencere ve hiç penceresi klavye odağını (pencere simge durumuna küçültülmüş ise bu genel durum) varsa, iletileri wm_keyup ve wm_keydown yerine wm_syskeyup ve wm_syskeydown iletileri TranslateAccelerator çevirir.

Bir menü öğesine menü sahibi penceresi simge durumuna küçültüldüğünde uyan bir Hızlandırıcı tuş ortaya çıkarsa, TranslateAccelerator wm_command ileti göndermez. Pencerenin menü veya pencere menüsünden öğelerle eşleşmiyor Hızlandırıcı tuş vuruşu oluşursa, küçültülür bile ancak işlev wm_command ileti gönderir.

Windows ce: Tüm Hızlandırıcı önemli mesajları wm_command mesajlara çevrilir; Windows ce wm_syscommand mesajı desteklemiyor.

QuickInfo

nbsp; Windows &NT: sürüm 3.1 veya üstü gerektirir.
Windows:Windows 95 veya sonraki sürümleri gerektirir.
Windows ce:Sürüm 1.0 veya daha ilerisini gerektirir.
Header:WINUSER.h ilan etti.
İçe Library:User32.lib kullanın.
Unicode:Unicode ve ANSI sürümleri Windows NT olarak uygulanır.

Ayrıca bkz:

Klavye hızlandırıcıları genel bakış, klavye hızlandırıcı işlevlerini, CreateAcceleratorTable, GetMessage, LoadAccelerators, msg, PeekMessage, SetCapture, TranslateMessage, wm_command, WM_INITMENU, WM_INITMENUPOPUP, wm_keydown, wm_syskeydown, wm_syscommand

Index