Положение рамки
В графических системах положение обычной рамки верхнего уровня задается как абсолютное положение ее внешней рамки (см. Геометрия рамки). Положение дочерней рамки (см. Дочерние рамки) задается смещениями в пикселях ее внешних границ относительно исходного положения родительской рамки.
Вы можете получить доступ к положению рамки или изменить его, используя параметры рамки left и top (см. Параметры положения). Вот две дополнительные функции для работы с позициями существующей видимой рамки. В обоих функциях аргумент frame должен обозначать активную рамку и по умолчанию равен выбранной рамке.
- Функция: frame-position &optional frame
-
Для обычной, не дочерней рамки эта функция возвращает пару координат в пикселях ее внешнего положения (см. Макет рамки) относительно начала координат
(0, 0)ее экрана. Для дочерней рамки (см. Дочерние рамки) эта функция возвращает координаты ее внешнего положения относительно начала координат(0, 0)в исходном положении родительской рамки frame.Отрицательные значения никогда не указывают смещение от правого или нижнего края экрана frame или родительской рамки. Вместо этого они означают, что внешнее положение frame находится слева и/или сверху от начала координат ее экрана или исходного положения родительской рамки. Это обычно означает, что frame частично (или полностью) не видна. Однако в системах, где начало координат экрана не совпадает с его верхним левым углом, рамка может быть видна на дополнительном мониторе.
В рамке текстового терминала оба значения равны нулю.
- Функция: set-frame-position frame x y
-
Эта функция устанавливает внешнее положение рамки frame в (x, y). Последние аргументы задают координаты в пикселях и обычно отсчитываются от начала координат (0, 0) экрана frame. Для дочерних рамок они отсчитываются от исходного положения родительской рамки frame.
Отрицательные значения параметров позиционируют правый край внешней рамки на -x пикселей влево от правого края экрана (или исходного прямоугольника родительской рамки), а нижний край на -y пикселей вверх от нижнего края экрана (или исходного прямоугольника родительской рамки).
Обратите внимание, что отрицательные значения не позволяют выровнять правый или нижний край frame точно с правым или нижним краем ее экрана или родительской рамки. Они также не позволяют указать положение, которое не лежит внутри границ экрана или родительской рамки. Параметры рамки
leftиtop(см. Параметры положения) позволяют это сделать, но могут по-прежнему не давать хороших результатов для начальной или новой рамки.Эта функция не оказывает никакого влияния на рамки текстового терминала.
- Переменная: move-frame-functions
-
Этот обработчик указывает функции, которые выполняются, когда рамка Emacs перемещается (получает новую позицию) системой окон или менеджером окон. Функции выполняются с одним аргументом, рамкой, которая перемещалась. Для дочерней рамки (см. Дочерние рамки) функции выполняются только при изменении положения рамки относительно положения ее родительской рамки.
Copyright © 1990-1996, 1998-2022 Free Software Foundation, Inc.
Licensed under the GNU GPL license.
https://www.gnu.org/software/emacs/manual/html_node/elisp/Frame-Position.html