Я думаю, что это отсутствует на стороне ltk. С помощью M-.
в Slime я перехожу к определению кнопки:
(defargs button (widget)
command
compound
default
image
state
textvariable
underline
width)
На самом деле height
нет, и оно не происходит от widget
.
Я задал вопрос о nodgui (форк ltk с синтаксическим сахаром и дополнительными мета-виджетами), потому что сопровождающий очень хороший: https://notabug.org/cage/nodgui/issues/6
Его ответ:
nodgui поддерживает только те виджеты, которые используют движок темы ttk:
https://www.tcl.tk/man/tcl8.6/TkCmd/ttk_intro.htm
документация для ttk::button:
https://www.tcl.tk/man/tcl8.6/TkCmd/ttk_button.htm
не показывает параметр высоты (поправьте меня, если я ошибаюсь)
(есть ли шанс, что вы просматриваете https://www.tcl.tk/man/tcl8.6/TkCmd/button.htm ? Это версия виджета без ttk и не поддерживается)
Вероятно, вы можете поиграть с атрибутом frame и sticky, чтобы изменить геометрию кнопки (никогда не пробовал), более того, я не знаю, как указать размер кнопки в пикселях.
Надеюсь, это как-то поможет! :)
ps: Вероятно, важно отметить, что документация LTK устарела в части виджетов.
Другая информация для рассмотрения: https://mailman.common-lisp.net/pipermail/ltk-user/2016-June/000625.html
Tcl/Tk до 8.4 включительно позволял устанавливать шрифт для кнопок. С 8.5 стоял набор виджетов ттк, который в какой-то момент стал дефолтным для лтк. Набор виджетов ttk использует движок темы для определения многих параметров рендеринга для виджетов, чтобы добиться «родного» вида. Это означает, что многие старые опции для виджетов были удалены. Вы можете найти документацию для виджета здесь: https://www.tcl.tk/man/tcl8.6/TkCmd/ttk_button.htm
Если вы нажмете :tk84 на features, вы получите виджеты в старом стиле, в противном случае вы, конечно, можете создавать/изменять темы ttk, что также должно дать вам возможность настраивать шрифты. С подобными сообщениями об ошибках было бы очень полезно, если бы вы включили информацию об операционной системе, в которой возникла проблема, lisp, с которым вы используете Ltk, и, в этом случае, снимок экрана.
person
Ehvince
schedule
29.03.2019