GUISetCoord
Устанавливает абсолютные координаты для следующего элемента управления
GUISetCoord ( left, top [, width [, height [, winhandle ]]] )
Параметры
left | Левая координата. |
top |
Правая координата. |
width |
[необязательный] Ширина (по умолчанию предыдущая ширина). |
height |
[необязательный] Высота (по умолчанию предыдущая высота). |
winhandle |
[необязательный] Дескриптор окна, возвращённый функцией GUICreate() (по умолчанию ранее использованное). |
Возвращаемое значение
Успех: | Возвращает 1. |
Ошибка: | Возвращает 0. |
Примечания
Используйте опции Opt ("GUICoordMode", 2). Это позволяет установить текущее положение на конкретную позицию и использовать позицию для создания новых элементов по строкам (x_offset,-1) или по столбцам (-1, y_offset).См. также
GUICtrlCreate...Пример
#include <GUIConstantsEx.au3>
Example1()
Example2() ; пример был GUICtrlCreateLabel
Func Example1()
Local $msg
Opt("GUICoordMode", 2) ; режим относительных координат
GUICreate("My GUI Set Coord", 200, 100)
GUICtrlCreateCheckbox("Check #1", 20, 10, 75)
GUICtrlCreateCheckbox("Notify #2", 10, -1) ; следующий столбец той же строки
GUISetCoord(20, 60)
GUICtrlCreateButton("OK #3", -1, -1)
GUICtrlCreateButton("Cancel #4", 10, -1)
GUICtrlSetState(-1, $GUI_FOCUS)
GUISetState() ; показывает созданное окно
; Запускается цикл опроса GUI до тех пор пока окно не будет закрыто
While 1
$msg = GUIGetMsg()
If $msg = $GUI_EVENT_CLOSE Then ExitLoop
WEnd
GUIDelete()
EndFunc
Func Example2()
Local $widthCell, $msg, $iOldOpt
GUICreate("Режим относительных координат") ; Создаёт окно в центре экрана
GUISetHelp("notepad.exe") ; запускает блокнот, если нажата клавиша F1
$iOldOpt = Opt("GUICoordMode", 2) ; режим относительных координат
$widthCell = 110
GUICtrlCreateLabel("Строка1,Столбец1", 10, 30, $widthCell) ; первый столбец шириной 70 пиксель
GUICtrlCreateLabel("Строка2,Столбец1", -1, 0) ; следующая строка
GUICtrlCreateLabel("Строка3,Столбец2", 0, 0) ; следующая строка и следующий столбец
GUICtrlCreateLabel("Строка3,Столбец3", 0, -1) ; следующий столбец той же строки
GUICtrlCreateLabel("Строка4,Столбец1", -3 * $widthCell, 0) ; следующая строка Столбец1
GUISetState() ; показывает созданное окно
; Запускается цикл опроса GUI до тех пор пока окно не будет закрыто
Do
$msg = GUIGetMsg()
Until $msg = $GUI_EVENT_CLOSE
$iOldOpt = Opt("GUICoordMode", $iOldOpt)
GUIDelete()
EndFunc