|
|
Устанавливает положение, размер и/или позицию в 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+ | Руководство пользователя
|
|
|
|
|
|