GetMessage

GetMessage funkcia načíta správy z front hlásení volajúci vlákno a miest v štruktúre špecifikované. Túto funkciu môžete načítať obe správy súvisiace s zadané okno a vlákno správ vyslaní cez PostThreadMessage funkciu. Funkcia načíta správ, ktoré ležia vo vnútri špecifikovaného rozsahu hodnôt správy. GetMessage nie je získavanie správ pre windows, ktoré patria k iné vlákna alebo aplikácie.

BOOL GetMessage ( LPMSG  lpMsg; / / address konštrukcie s hlásenímHWNDhWnd; / / zvládnuť oknoUINTwMsgFilterMin; / / prvýkrát správy.UINTwMsgFilterMax / / poslednej správy.);
 

Parametre

lpMsg
Smerník na MSG štruktúru, ktorá prijíma údaje správy z front hlásení vlákno.
hWnd
Spracovať do okna, ktorých správy majú byť obnovený. Jednu hodnotu má osobitný význam:
Hodnota Význam
HODNOTU NULL GetMessage načíta správy pre okno, do ktorej patrí volajúci vlákno a vlákno správy zverejnené vlákno volanie cez PostThreadMessage.

wMsgFilterMin
Určuje celočíselnú hodnotu najnižšia hodnota správy byť obnovený.
wMsgFilterMax
Určuje celočíselnú hodnotu najvyššou hodnotou správy byť obnovený.

Note:

Ak funkciu načíta správu iné ako WM_QUIT, vrátená hodnota je nenulové.

Ak funkciu načíta WM_QUIT správy, vrátená hodnota je nula.

Ak chyba vrátená hodnota je -1. Napríklad, funkcia zlyhá, ak hWnd je neplatná okno rukoväť alebo lpMsg je chybný smerník. Získajte rozšírené informácie o chybách, volajte na číslo GetLastError.

Poznámky

Žiadosť zvyčajne použije hodnotu vrátenú funkciou umožňuje určiť, či chcete ukončiť hlavným posolstvom slučky a skončiť program.

Funkcia GetMessage len načíta správy súvisiace s okienkom identifikovaný parametrom hWnd alebo ktorýkoľvek z jeho deti, ako je špecifikované funkciou IsChild a rozsahu správy hodnotám vydaným parametre wMsgFilterMin a wMsgFilterMax . Ak hWnd hodnotu NULL, GetMessage načíta správy pre okno, do ktorej patrí volajúci vlákno a vlákno správy zverejnené volajúci vlákno cez PostThreadMessage. GetMessage načítať správy pre windows, ktoré patria k ostatným vláknam ani pre vlákna iné než volajúceho vlákno, dokonca aj vtedy, ak hWnd nie je NULL. Vlákno správ zaslal PostThreadMessage funkciu, správu hWnd hodnotu NULL. Ak sú obe nulové, GetMessage wMsgFilterMin a wMsgFilterMax vráti všetky dostupné správy (t. j. žiadne rozsah filtrovania sa vykonáva).

WM_KEYFIRST a WM_KEYLAST konštanty je možné použiť ako filter hodnoty na načítanie všetkých správ týkajúcich sa vstup z klávesnice; WM_MOUSEFIRST a WM_MOUSELAST konštanty je možné použiť na načítanie všetkých správ myš. Ak parametre wMsgFilterMin a wMsgFilterMax sú obe nulové, funkcia GetMessage vráti všetky dostupné správy, (ktorý je bez registrácie akékoľvek filtrovanie).

GetMessage neodstráni z frontu hlásenia WM_PAINT. Správy zostanú vo fronte až do spracovania.

Všimnite si, že vrátenú hodnotu funkcie môžu byť nenulová, nule alebo -1. Preto by sa mal vyhnúť kód takhle:

zatiaľ čo (GetMessage (lpMsg, hWnd, 0, 0))... 
 

Možnosť vrátená hodnota-1 znamená, že takýto kódex môže viesť ku chybám smrteľné aplikácie.

Stručné informácie

nbsp; Systém Windows &NT: vyžaduje verzia 3.1 alebo novšia.
Windows:Vyžaduje systém Windows 95 alebo novším.
Windows CE:Vyžaduje verziu 1.0 alebo novšiu verziu.
Hlavičky:Deklarovaný v súbore winuser.h.
Importovať knižnica:Použiť user32.lib.
Unicode:Implementovaný ako Unicode, ANSI verzia v systéme Windows NT.

Pozri tiež

Správy a správy fronty prehľad správy a správy vo fronte funkcie IsChild, MSG, PeekMessage, PostMessage, PostThreadMessage, WaitMessage

Index