PeekMessage işlevi bir ileti için bir konu ileti sırası denetler ve (varsa) ileti belirtilen yapıda yerler.
bool PeekMessage () lpmsg lpMsg, / / ileti yapısı için işaretçihwndhWnd, / / idare pencereyeUINTwMsgFilterMin, / / ilk mesajıUINTwMsgFilterMax, / / son mesajUINTwRemoveMsg / / kaldırma flags);
Değer | Anlamı |
---|---|
PM_NOREMOVE | Mesaj, PeekMessage tarafından işlendikten sonra sıradan kaldırılmaz. |
PM_REMOVE | İleti, işlendikten sonra PeekMessage tarafından sıradan kaldırılmadan. |
İsteğe bağlı olarak, pm_noremove ya da pm_remove ile PM_NOYIELD değeri birleştirebilirsiniz. Bu bayrak sistem boşta gitmek için arayan için bekleyen herhangi bir iş parçacığı serbest engeller (bkz: WaitForInputIdle).
Varsayılan olarak, tüm ileti türlerini işlenir. Yalnızca belirli ileti işlenmesi gerektiğini belirtmek için daha aşağıdaki değerlerden birini belirtin:
Değer | Anlamı |
---|---|
PM_QS_INPUT | Windows NT 5.0 ve Windows 98: İşlem iletileri fare ve klavye. |
PM_QS_PAINT | Windows NT 5.0 ve Windows 98: Boya iletilerini işleme. |
PM_QS_POSTMESSAGE | Windows NT 5.0 ve Windows 98: Zamanlayıcılar ve kısayol tuşları da dahil olmak üzere tüm postalanan iletileri işleme. |
PM_QS_SENDMESSAGE | Windows NT 5.0 ve Windows 98: İşlemin tüm gönderilen iletiler. |
Bir ileti varsa, dönüş değeri sıfır.
Hiçbir ileti varsa, dönüş değeri sıfırdır.
GetMessage işlevinden farklı olarak, PeekMessage işlevi dönmeden önce sıraya yerleştirilecek ileti beklemez.
PeekMessage yalnızca pencerenin hWnd parametresi veya IsChild işlevi tarafından ve wMsgFilterMin ve wMsgFilterMax parametreleri ile verilen mesaj değerleri aralığında belirtilen alt öğelerinden herhangi biri tarafından tanımlanan ilişkilendirilmiş iletileri alır. HWnd null ise, PeekMessage arama yapma geçerli iş parçacığına ait herhangi bir pencere iletilerini alır. (PeekMessage diğer ipler ait windows iletilerini almak değil.) HWnd –1 ise, PeekMessage PostThreadMessage işlevi tarafından yayınlanmıştır yalnızca iletileri hWnd değeri NULL, döndürür. WMsgFilterMin ve wMsgFilterMax iki sıfır, PeekMessage tüm kullanılabilir iletilerini döndürür (yani, filtre yok aralığı gerçekleştirilir).
WM_KEYFIRST ve wm_keylast sabitleri, tüm klavye iletilerini almak üzere filtre değerleri olarak kullanılabilir; WM_MOUSEFIRST ve wm_mouselast sabitleri tüm fare iletileri almak için kullanılan.
PeekMessage işlevi sıradan olmayan WM_PAINT iletileri normalde kaldırmaz. Onlar işleninceye kadar WM_PAINT iletileri sırada kalır. WM_PAINT ileti boş güncelleştirme bölgesi varsa, ancak PeekMessage sıradan kaldırmak.
Windows ce: Boş güncelleştirme bölge WM_PAINT iletileri kuyruktan kaldırılmaz.
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.
İleti ve ileti sıraları genel bakış, ileti ve ileti sırası işlevleri, GetMessage, IsChild, msg, WaitForInputIdle, WaitMessage