Главная


15.1. Опции создания пункта меню (coption)

Везде, где описанные выше методы меню допускают coption, вы можете применить значение к любому из приведенных ниже имен опций, используя имя опции в качестве аргумента ключевого слова с нужным значением. Например, чтобы текст команды отображался красными буквами, используйте "foreground='red'" в качестве опции к вызову метода add_command.

Таблица 24. Значения опций для пункта меню

accelerator Чтобы отобразить комбинацию горячей клавиши справа от пункта меню, используйте опцию "accelerator=s", где s - строка, содержащая отображаемые символы. Например, чтобы указать, что команда использует "Control-S" в качестве ускорителя, используйте опцию "accelerator='Ctrl+S'". Обратите внимание, что эта опция не реализует горячую клавишу; для этого используйте привязку к нажатию клавиш.
activebackground Цвет фона, используемый для пунктов меню, когда они находятся под мышью.
activeforeground Цвет переднего плана, используемый для пунктов меню, когда они находятся под мышью.
background Цвет фона, используемый для пунктов меню, когда они не находятся под мышью. Обратите внимание, что это нельзя сокращать как bg.
bitmap Отображение битового изображения для данного пункта меню; см. Раздел 5.7, "Битовые изображения".
columnbreak Обычно все пункты меню отображаются в одном длинном столбце. Если вы установите columnbreak=1, этот пункт меню начнет новый столбец справа от столбца, содержащего предыдущий пункт меню.
columnbreak Используйте опцию "columnbreak=True", чтобы начать новый столбец элементов меню с этого пункта меню.
command Процедура, которая будет вызвана при активации этого пункта меню.
compound Если вы хотите отобразить в пункте меню и текст, и графику (битовое изображение или картинку), используйте эту опцию, чтобы указать расположение графики относительно текста. Значения могут быть любыми из tk.LEFT, tk.RIGHT, tk.TOP, tk.BOTTOM, tk.CENTER или tk.NONE. Например, значение "compound=tk.TOP" расположит графику над текстом.
font Шрифт для текста, отображаемого с помощью опции label. См. Раздел 5.4, "Шрифты"
foreground Цвет переднего плана, используемый для пунктов меню, когда они не находятся под мышью. Обратите внимание, что это нельзя сокращать как fg.
hidemargin По умолчанию небольшое поле отделяет соседние пункты меню в меню. Используйте coption "hidemargin=True" для подавления этого поля. Например, если пункты меню представляют собой цветные блоки на палитре, эта опция сделает их соприкасающимися без каких-либо других промежуточных цветов.
image Укажите изображение для данного пункта меню; см. Раздел 5.9, "Изображения".
label Строка текста, которая будет отображаться для этого пункта меню.
menu Этот параметр используется только для каскадных пунктов меню. Установите его на объект Menu, который отображает следующий уровень пунктов меню.
offvalue Обычно управляющая переменная для checkbutton устанавливается в 0, когда checkbutton выключен. Вы можете изменить значение off, установив этот параметр в нужное значение.
onvalue Обычно управляющая переменная для checkbutton устанавливается в 1, когда checkbutton включен. Вы можете изменить значение включения, установив этот параметр в нужное значение.
selectcolor Обычно цвет, отображаемый в установленном чекбоксе или радиокнопке, - красный. Измените этот цвет, установив этот параметр в нужное значение; см. раздел Раздел 5.3, "Цвета".
selectimage Если вы используете опцию image для отображения графики вместо текста в меню радиокнопки или чекбокса, если вы примените selectimage=I, изображение I будет отображаться при выборе элемента.
state Обычно все пункты меню реагируют на щелчки мыши, но вы можете установить state=tk.DISABLED, чтобы сделать их серыми и не реагирующими. При наведении мыши на пункт меню эта опция станет tk.ACTIVE.
underline Обычно ни одна из букв в label не подчеркивается. Установите этот параметр на индекс буквы, чтобы подчеркнуть ее.
value Указывает значение связанной управляющей переменной для радиокнопки. Это может быть целое число, если управляющая переменная является IntVar, или строка, если управляющая переменная является StringVar.
variable Для чекбоксов или радиокнопок этот параметр должен быть установлен на управляющую переменную, связанную с чекбоксом или группой радиокнопок.

>> Меню верхнего уровня