Spec-Zone.ru › Elisp

Доступ к параметрам фрейма

Эти функции позволяют читать и изменять значения параметров фрейма.

Функция: frame-parameter frame parameter

Эта функция возвращает значение параметра parameter (символ) фрейма frame. Если frame является nil, возвращается параметр выделенного фрейма. Если у frame нет настроек для parameter, функция возвращает nil.

Функция: frame-parameters &optional frame

Функция frame-parameters возвращает список всех параметров frame и их значений в формате alist. Если frame является nil или опущен, функция возвращает параметры выделенного фрейма.

Функция: modify-frame-parameters frame alist

Эта функция изменяет фрейм frame на основе элементов alist. Каждый элемент alist имеет вид (parm . value), где parm — символ, обозначающий параметр. Если вы не указываете параметр в alist, его значение не изменяется. Если frame является nil, используется выделенный фрейм по умолчанию.

Некоторые параметры имеют смысл только для фреймов на определённых типах дисплеев (см. Фреймы). Если alist содержит параметры, не имеющие смысла для дисплея frame, эта функция изменит их значение в списке параметров фрейма, но в остальном проигнорирует их.

Когда alist задаёт более одного параметра, значение которого может повлиять на новый размер frame, конечный размер фрейма может отличаться в зависимости от используемого инструментария. Например, указание того, что фрейм должен иметь меню и/или панель инструментов вместо их отсутствия, и одновременное указание новой высоты фрейма неизбежно приведёт к перерасчёту высоты фрейма. В этом случае функция попытается сделать так, чтобы явно указанная высота имела приоритет. Однако нельзя исключить, что добавление (или удаление) меню или панели инструментов, когда это будет выполнено инструментарием, может нарушить это намерение.

Иногда привязка frame-inhibit-implied-resize (см. Неявное изменение размера фрейма) к значению, отличному от nil, в вызовах этой функции может решить описанную проблему. Однако иногда именно такая привязка может стать причиной проблемы.

Функция: set-frame-parameter frame parm value

Эта функция устанавливает параметр фрейма parm в заданное значение value. Если frame является nil, используется выделенный фрейм по умолчанию.

Функция: modify-all-frames-parameters alist

Эта функция изменяет параметры фреймов всех существующих фреймов согласно alist, затем изменяет default-frame-alist (и, при необходимости, initial-frame-alist) для применения тех же значений параметров к фреймам, которые будут созданы в дальнейшем.

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/Parameter-Access.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API