Filtrowanie wiadomości

Aplikację można wybrać określone wiadomości do pobrania z kolejki wiadomości (przy jednoczesnym ignorowaniu innych wiadomości) przy użyciu funkcji GetMessage lub PeekMessage , aby określić filtr wiadomości. Filtr jest zakres identyfikatory wiadomości (określony przez identyfikator pierwszego i ostatniego) i/lub w uchwyt okna. GetMessage i PeekMessage za pomocą filtru wiadomości do wybierać wiadomości do pobrania z kolejki. Filtrowanie wiadomości jest użyteczne, jeśli aplikacja musi przeszukiwać kolejka komunikatów dla wiadomości, które przybyły później w kolejce.

Dowolna aplikacja, która filtruje wiadomości musi zapewnić, że wiadomości spełniające filtr wiadomości może zostać zaksięgowana. Na przykład jeżeli aplikacji filtry wiadomości używając funkcji w oknie, które nie otrzymują klawiatury, funkcja GetMessage nie zwraca. To skutecznie „zawiesza się „aplikacja.

Aby odfiltrować klawiatury, myszy i komunikaty DDE, aplikacji można użyć wiadomości WM_KEYFIRST i WM_KEYLAST, WM_MOUSEFIRST i WM_MOUSELAST oraz stałe WM_DDE_FIRST i WM_DDE_LAST.

Index