|
|
|
|
Устанавливает положение, размер и/или позицию в Z-последовательности указанного окна.
Синтаксис
| function SetWindowPos(
| | hWnd, | | InsertAfter, | | Left, | | Top, | | Width, | | Height, | | Flags
| | ): Boolean;
|
| Параметры
|
| Параметр
| Тип
| Описание
|
| hWnd
| Number
| дескриптор устанавливаемого окна
|
| InsertAfter
| Number
| дескриптор предшествующего окна в Z-последовательности или одно из фиксированных значений (см. ниже)
|
| Left
| Number
| положение окна по горизонтали
|
| Top
| Number
| положение окна по вертикали
|
| Width
| Number
| ширина окна
|
| Height
| Number
| высота окна
|
| Flags
| Number
| флаги позиционирования окна (см. ниже)
|
|
| Параметр InsertAfter
|
| Значение
| Описание
|
| HWND_BOTTOM
| помещает окно внизу Z-последовательности. Если параметр hWnd идентифицирует самое верхнее окно, окно теряет свой статус самого верхнего и помещается внизу всех других окон.
|
| HWND_NOTOPMOST
| помещает окно перед всеми не самыми верхними окнами (т.е. позади всех самых верхних окон). Этот флаг не имеет значения, если окно уже является не самым верхним.
|
| HWND_TOP
| помещает окно наверху Z-последовательности
|
| HWND_TOPMOST
| помещает окно перед всеми самыми верхними окнами. Окно сохранит свою позицию даже при потере активности.
|
|
| Параметр Flags
|
| Значение
| Описание
|
| SWP_ASYNCWINDOWPOS
| если вызывающий поток и поток, который владеет окном, подключены к разным очередям ввода данных, система посылает запрос потоку, который владеет окном. Это не допускает блокирования работы вызывающего потока, пока другие потоки обрабатывают запрос.
|
| SWP_DEFERERASE
| препятствует отправке сообщения WM_SYNCPAINT
|
| SWP_DRAWFRAME
| выводит рамку вокруг окна, указанную в описании его класса.
|
| SWP_FRAMECHANGED
| применяет новый стиль рамки, установленный функцией SetWindowLong.
|
| SWP_HIDEWINDOW
| скрывает окно
|
| SWP_NOACTIVATE
| не активирует окно, если такая активация предусмотрена значением параметра InsertAfter.
|
| SWP_NOCOPYBITS
| не восстанавливает содержимое рабочей области окна после изменения его характеристик в результате применения функции
|
| SWP_NOMOVE
| сохраняет текущее положение окна (игнорирует параметры Left и Top)
|
| SWP_NOSIZE
| сохраняет текущий размер окна (игнорирует параметры Width и Height)
|
| SWP_NOZORDER
| сохраняет текущую позицию окна в Z-последовательности (игнорирует параметр InsertAfter)
|
| SWP_NOOWNERZORDER
| сохраняет текущую позицию владельца окна в Z-последовательности
|
| SWP_NOREDRAW
| не перерисовывает изменения, произошедшие в результате применения функции.
|
| SWP_NOSENDCHANGING
| предохраняет окно от приема сообщения WM_WINDOWPOSCHANGING
|
| SWP_SHOWWINDOW
| отображает окно на экране
|
| SWP_NOREPOSITION
| см. SWP_NOOWNERZORDER
|
|
Возвращаемое значение
true в случае успеха или false в противном случае.
Примечание
Если в параметре Flags установлены флаги SWP_SHOWWINDOW или SWP_HIDEWINDOW, размеры или позиция окна не могут быть изменены.
При изменении параметров окна функцией SetWindowLong необходимо применить изменения, вызвав функцию SetWindowPos со следующим набором флагов:
SWP_NOMOVE | SWP_NOSIZE | SWP_NOZORDER | SWP_FRAMECHANGED.
Совместимость
Windows API
|
| JS+ | Руководство пользователя
|
|
|
| |
|
|