Доступ к параметрам фрейма
Эти функции позволяют читать и изменять значения параметров фрейма.
- Функция: 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