В графических системах положение обычного главного кадра задаётся как абсолютное положение его внешнего кадра (см. Геометрия кадра). Положение дочернего кадра (см. Дочерние кадры) задаётся через смещения в пикселях его внешних границ относительно собственного положения родительского кадра.
Вы можете получить или изменить положение кадра с помощью параметров
кадра left и top (см. Параметры положения).
Здесь приведены две дополнительные функции для работы с положениями
существующего видимого кадра. Для обеих функций аргумент frame
должен обозначать активный кадр и по умолчанию равен выбранному кадру.
Для обычного, не дочернего кадра эта функция возвращает cons из
координат в пикселях его внешнего положения (см. Расположение кадра)
относительно начала координат (0, 0) его дисплея. Для дочернего
кадра (см. Дочерние кадры) эта функция возвращает координаты в
пикселях его внешнего положения относительно начала координат
(0, 0) в собственном положении родителя frame.
Отрицательные значения никогда не указывают на смещение от правого или нижнего края дисплея или родительского кадра frame. Напротив, они означают, что внешнее положение frame находится слева и/или выше начала координат его дисплея или собственного положения его родительского кадра. Обычно это означает, что frame виден лишь частично (или полностью невидим). Однако в системах, где начало координат дисплея не совпадает с его верхним левым углом, кадр может быть виден на вторичном мониторе.
На текстовом терминале оба значения равны нулю.
Эта функция устанавливает внешнее положение кадра frame в (x, y). Последние аргументы задают пиксели и обычно отсчитываются от начала координат в позиции (0, 0) дисплея frame. Для дочерних кадров они отсчитываются от собственного положения родительского кадра frame.
Отрицательные значения аргументов позиционируют правый край внешнего кадра на -x пикселей левее правого края экрана (или собственного прямоугольника родительского кадра), а нижний край — на -y пикселей выше нижнего края экрана (или собственного прямоугольника родительского кадра).
Обратите внимание, что отрицательные значения не позволяют выровнять
правый или нижний край frame точно по правому или нижнему краю
его дисплея или родительского кадра. Они также не позволяют задать
положение, которое не лежит внутри границ дисплея или родительского
кадра. Параметры кадра left и top (см. Параметры положения)
позволяют это сделать, но могут всё равно не дать хороших результатов
для начального или нового кадра.
Эта функция не действует на кадры текстового терминала.
Этот хук задаёт функции, которые выполняются при перемещении кадра Emacs (присвоении ему новой позиции) оконной системой или оконным менеджером. Функции вызываются с одним аргументом — перемещённым кадром. Для дочернего кадра (см. Дочерние кадры) функции выполняются только тогда, когда положение кадра изменяется относительно положения его родительского кадра.