Шаг 64.
Библиотека Tkinter. Компоненты и вспомогательные классы. Нестилизуемые компоненты. Компонент Menu: меню. Опции пункта меню
На этом шаге мы перечислим опции пункта меню.
При создании каждого пункта меню нам придется указать для него опции, задающие его ключевые параметры: текст надписи для пункта, изображение, тип (обычный пункт меню, подменю, флажок или переключатель) и др.
Кроме того, мы можем указать для конкретного пункта меню отдельное оформление, отличное от оформления остальных пунктов, и оно задается также особыми опциями.
Рассмотрим все довольно многочисленные опции, поддерживаемые пунктами меню:
- label - задает текст надписи для пункта;
- command - указывает функцию (метод), вызываемую при выборе текущего пункта меню;
- menu - задает подменю, связанное с текущим пунктом, в виде экземпляра объекта Menu. Применяется только при создании подменю;
- variable - задает метапеременную, хранящую определенное в свойствах onvalue, offvalue или value значение. Метапеременная может быть любого типа.
Указывается только для пунктов флажков и пунктов переключателей. Все пункты переключателей, входящие в одну группу, должны быть связаны с одной метапеременной;
- onvalue - задает значение, которое будет заноситься в связанную с пунктом метапеременную в случае, если пункт флажка установлен. Значение по умолчанию - 1. Применяется
только при создании пунктов флажков;
- offvalue - задает значение, которое будет заноситься в связанную с пунктом метапеременную в случае, если пункт флажка сброшен. Значение по умолчанию - 0. Применяется только при создании пунктов флажков;
- value - задает значение, которое будет заноситься в связанную с пунктом метапеременную в случае, если текущий пункт переключателя установлен. Применяется только при создании пунктов переключателей;
- accelerator - задает обозначение связанной с этим пунктом "горячей клавиши", представленное в виде строки;
- image - указывает изображение, которое будет выводиться в составе надписи вместе с текстом или вместо него (это зависит от значения опции compound).
Изображение задается в виде экземпляра класса PhotoImage или ImageTk.PhotoImage из библиотеки Pillow;
- compound - указывает месторасположение изображения относительно текста. Доступны значения:
- tkinter.LEFT - изображение находится слева от текста,
- tkinter.TOP - сверху,
- tkinter.RIGHT - справа,
- tkinter.BOTTOM - снизу и
- None - выводится только изображение (поведение по умолчанию).
Эту опцию имеет смысл указывать лишь в случае задания изображения для пункта меню;
- columnbreak - если True или 1, следующие пункты меню будут выводиться в новой колонке меню, расположенной правее текущей. Если False или 0,
следующие пункты будут выводиться в той же колонке меню, что и текущий пункт (поведение по умолчанию);
- hidemargin - если True или 1, текущий пункт будет выведен вплотную к соседним пунктам. Если False или 0, текущий пункт будет отделен от соседних пунктов
небольшими просветами (поведение по умолчанию);
- state - задает состояние пункта меню. Поддерживаются значения:
- tkinter.NORMAL - доступное состояние (поведение по умолчанию) и
- tkinter.DISABLED - недоступное состояние;
- underline - задает номер символа в надписи, который следует сделать подчеркнутым. Нумерация символов начинается с 0. Если в качестве значения опции указано отрицательное число, ни один символ надписи не будет подчеркнут;
- font - задает шрифт для текста;
- foreground или fg - задает цвет текста;
- background или bg - задает цвет фона;
- activeforeground - задает цвет текста, когда курсор мыши наведен на компонент;
- activebackground - задает цвет фона, когда курсор мыши наведен на компонент;
- selectcolor - указывает цвет пункта флажка или переключателя, когда он находится в установленном состоянии. Применяется только при создании пунктов флажков и переключателей;
- selectimage - указывает изображение, которое будет выводиться в составе надписи вместе с текстом или вместо него в пункте флажка или переключателя, когда он находится в установленном состоянии.
Изображение задается в виде экземпляра класса PhotoImage или ImageTk.PhotoImage из библиотеки Pillow. Применяется только при создании пунктов флажков и переключателей.
На следующем шаге мы рассмотрим методы компонента Menu.
Предыдущий шаг
Содержание
Следующий шаг