DeferWindowPos

Funkcia DeferWindowPos aktualizuje zadané viaceré-okno – štruktúry rozmiestnenia pre zadané okno. Funkcia vráti popisovač aktualizované štruktúry. EndDeferWindowPos funkcia používa informácie v tejto štruktúre chcete zmeniť pozíciu a veľkosť číslo windows súčasne. BeginDeferWindowPos funkcia vytvorí štruktúra.

(HDWP DeferWindowPos HDWP  hWinPosInfo; / / popisovača na vnútornú štruktúruHWNDhWnd; / / spracovať do okna do polohyHWNDhWndInsertAfter; / / umiestnenie poradia rukoväťint x; / / horizontálnej polohe int y; / / vertikálnej polohy int cx, // width int cy, // heightUINTuFlags / / umiestnenie okna flags);
 

Parametre

hWinPosInfo
Spracovať do viacerých-okna – pozície štruktúra, ktorá obsahuje veľkosť a umiestnenie informácie pre jeden alebo viac okien. Táto štruktúra je vrátený BeginDeferWindowPos alebo posledné volanie DeferWindowPos.
hWnd
Spracovať do okna pre ktoré aktualizovať informácie uložené v štruktúre.
hWndInsertAfter
Spracovať do okna, ktoré predchádza okna umiestnená v poradie vykresľovania. Tento parameter musí byť okno rukoväť alebo jedna z nasledujúcich hodnôt:
Hodnota Význam
HWND_BOTTOM Umiestni okno v spodnej časti poradie vykresľovania. Ak hWnd parameter určuje hlavné okno, okno stratí svoj štatút najvyššej a je umiestnený v spodnej časti všetky ostatné okná.
HWND_NOTOPMOST Umiestni okno nad všetkými non-najvyššej windows (t. j. za všetky najvyššej okná). Táto vlajka nemá žiadny vplyv, ak už je okno-najvyššej okno.
HWND_TOP Umiestni okno v hornej časti poradie vykresľovania.
HWND_TOPMOST Umiestni okno nad všetkými non-najvyššej systému windows. Okno tvrdí jeho najvyššej pozícii, aj vtedy, keď je deaktivovaný.

Tento parameter sa ignoruje, ak je príznak SWP_NOZORDER nastavený v parametri uFlags.

x
Určuje súradnica x v ľavom hornom rohu okna.
y
Určuje súradnica y v okne ľavý horný roh.
cx
Určuje v okne Nová šírka v pixeloch.
cy
Určuje v okne nová výška v pixeloch.
uFlags
Určuje kombináciu nasledujúcich hodnôt, ktoré majú vplyv na veľkosť a umiestnenie okna:
Hodnota Význam
SWP_DRAWFRAME Nakreslí rámu (definované v opisu triedy v okne) okolo okien.
SWP_FRAMECHANGED Odošle správu WM_NCCALCSIZE do okna, dokonca aj vtedy, ak veľkosť okna sa nezmení. Ak nie je určená táto vlajka, WM_NCCALCSIZE sa odošle iba vtedy, ak sa zmení veľkosť okna.
SWP_HIDEWINDOW Skryje okno.
SWP_NOACTIVATE Neaktivujú okna. Ak nie je tento príznak, okno je aktivovaný a presťahoval do hornej časti najvyššej alebo najvyššej skupiny, (v závislosti na nastavení parametra hWndInsertAfter ).
SWP_NOCOPYBITS Odstráni sa celý obsah do klientskej oblasti. Ak táto vlajka nie je zadaný, platné obsahu do klientskej oblasti sú uložené a skopírované späť do oblasti klienta po veľkosti alebo premiestnená okna.
SWP_NOMOVE Zachová aktuálnu pozíciu (ignoruje parametre x a Y ).
SWP_NOOWNERZORDER Nemení polohu okna vlastník v poradie vykresľovania.
SWP_NOREDRAW Nie prekresliť zmeny. Ak je nastavená táto vlajka, no náterov akéhokoľvek druhu vyskytuje. Toto sa vzťahuje na oblasti klienta nonclient oblasti (vrátane záhlavia a posúvače) a akejkoľvek časti rodičovské okno nepotiahnutého tohto okna premiestňujú. Ak je nastavená táto vlajka žiadosti musí výslovne vyvrátiť alebo obnovte všetky časti okna a rodičovské okno, ktoré je potrebné redrawing.
SWP_NOREPOSITION Rovnaké ako príznak SWP_NOOWNERZORDER.
SWP_NOSENDCHANGING Zabraňuje okna hlásenie WM_WINDOWPOSCHANGING.
SWP_NOSIZE Zachová aktuálnu veľkosť (ignoruje parametre cx a cy ).
SWP_NOZORDER Zachováva súčasný poradie vykresľovania (ignoruje hWndInsertAfter parameter).
SWP_SHOWWINDOW Zobrazí okno.

Note:

Vrátená hodnota identifikuje aktualizované viacerých okien – pozícia štruktúru. Rukoväť odoslal tejto funkcie môže líšiť od rukoväť odovzdanom funkcii. Novej rukoväti, že táto funkcia vracia hodnotu by prešla počas nasledujúcej výzvy pre funkciu DeferWindowPos alebo EndDeferWindowPos.

Ak nedostatok systémových prostriedkov k dispozícii pre funkciu uspieť, vrátená hodnota je NULL. Získajte rozšírené informácie o chybách, volajte na číslo GetLastError.

Poznámky

Ak hovor DeferWindowPos zlyhá, uplatňovanie by opustiť fungovanie umiestnenie okna a nevyžadujú EndDeferWindowPos.

Ak SWP_NOZORDER nie je zadaný, systém umiestni okno identifikovaný parametrom hWnd v polohe po okno identifikovaný parametrom hWndInsertAfter . Ak hWndInsertAfter je NULL alebo HWND_TOP, systém umiestní hWnd okno v hornej časti poradie vykresľovania. Ak je hWndInsertAfter HWND_BOTTOM, systém umiestní hWnd okno v spodnej časti poradie vykresľovania.

Všetky súradnice pre podriadené okná sú relatívne vzhľadom na ľavý horný roh oblasti rodičovské okno klienta.

Okno možno najvyššej okno stanovením hWndInsertAfter HWND_TOPMOST vlajku a zabezpečenie nie je nastavený príznak SWP_NOZORDER alebo nastavením v okne pozíciu poradie vykresľovania tak, aby sa vyššie všetky existujúce najvyššej okná. Ak je najvyššej-najvyššej okno, jeho vlastní okien sa tiež najvyššej. Svojich vlastníkov však nezmenia.

Ak ani SWP_NOACTIVATE, ani SWP_NOZORDER vlajkou je zadaný (t. j. pri podaní žiadosti, že súčasne aktivovať okno a zmenila svoju pozíciu poradie vykresľovania), hodnoty špecifikovanej v bode hWndInsertAfter sa používa iba v nasledujúcich prípadoch:

Žiadosť nie je možné aktivovať neaktívneho okna bez toho, aby sa tiež prináša do hornej časti poradie vykresľovania. Žiadosť môžete zmeniť pozíciu aktivovaný okna v poradie vykresľovania bez obmedzení alebo ho aktivovať okno a potom ho premiestnite do hornej časti okna najvyššej alebo najvyššej.

Okno je už najvyššej ak je premiestnená do dolnej (HWND_BOTTOM), poradie vykresľovania alebo po-najvyššej okna. Pri najvyššom okno sa mimo najvyššej svojich vlastníkov a jeho vlastní okien sa tiež-najvyššej windows.

Najvyššej okno môže vlastniť najvyššej okno, avšak nie naopak. Ľubovoľného okna (napríklad dialógové) vo vlastníctve najvyššej okno je sama najvyššej okno, aby zabezpečili, že všetky vo vlastníctve, windows zostať nad ich vlastníkom.

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:Nepodporované.
Hlavičky:Deklarovaný v súbore winuser.h.
Importovať knižnica:Použiť user32.lib.

Pozri tiež

ShowWindow v systéme Windows prehľad okno funkcie, BeginDeferWindowPos, EndDeferWindowPos,

Index