Виджет Button в Tkinter Python

Python GUI编程Программирование GUI на Python

Виджет button в Tkinter используется для добавления кнопок в приложения Python. На кнопке можно разместить текст или изображения. Кнопка может использоваться для отслеживания действий пользователя и может быть связана с функцией Python. При нажатии кнопки функция вызывается автоматически.

Синтаксис

Формат синтаксиса следующий:

w = Button ( master, option=value, ... )
  • master: родительский контейнер кнопки.

  • options: необязательные элементы, т.е. настраиваемые свойства кнопки. Эти параметры можно задавать в виде key = value, разделяя запятыми.

Порядковый номер Параметры и описание
1

activebackground

Цвет фона кнопки при наведении на неё мыши

2

activeforeground

Цвет переднего плана кнопки при наведении на неё мыши

3

bd

Размер границы кнопки, по умолчанию 2 пикселя

4

bg

Цвет фона кнопки

5

command

Функция, связанная с кнопкой; при нажатии на кнопку выполняется эта функция

6

fg

Цвет переднего плана кнопки (цвет текста кнопки)

7

font

Шрифт текста

8

height

Высота кнопки

9

highlightcolor

Цвет для подсветки

10

image

Изображение для отображения на кнопке

11

justify

При отображении нескольких строк текста задаёт выравнивание между разными строками. Возможные значения: LEFT, RIGHT, CENTER

12

padx

Отступ кнопки по оси x, то есть расстояние между содержимым кнопки и краем кнопки

13

pady

Внутренний отступ кнопки по направлению оси y

14

relief

Стиль границы, задаёт 3D-эффект виджета. Варианты: FLAT, SUNKEN, RAISED, GROOVE, RIDGE. По умолчанию — FLAT.

15

state

Задаёт состояние виджета кнопки. Варианты: NORMAL, ACTIVE, DISABLED. По умолчанию — NORMAL.

16

underline

Подчёркивание. По умолчанию текст на кнопке не подчёркнут. Значение — индекс символа для подчёркивания. Когда оно равно 0, подчёркивается первый символ; когда 1 — первые два символа, и так далее.

17

width

Ширина кнопки. Если этот параметр не задан, её размер подстраивается под содержимое кнопки (размер текста или изображения).

18

wraplength

Ограничивает количество символов, отображаемых в одной строке на кнопке

19

text

Текстовое содержимое кнопки

19

anchor

Параметр anchor, управляет положением текста, по умолчанию — center

Методы

Ниже приведены часто используемые методы виджета:
Метод Описание
deselect() Сбрасывает состояние радиокнопки
flash() Заставляет радиокнопку несколько раз мигать между цветом активного состояния и обычным цветом, но оставляет её в исходном состоянии.
invoke() Вы можете вызвать этот метод, чтобы получить то же действие, которое происходит, когда пользователь щёлкает по радиокнопке, чтобы изменить её состояние.
select() Устанавливает радиокнопку в выбранное состояние.

Примеры

В примере нажатие кнопки отобразит сообщение:

Примеры

#!/usr/bin/python # -*- coding: UTF-8 -*- import Tkinter import tkMessageBox top = Tkinter.Tk() def helloCallBack(): tkMessageBox.showinfo( "Hello Python", "Hello Example") B = Tkinter.Button(top, text ="Click me", command = helloCallBack) B.pack() top.mainloop()

Результат теста выглядит следующим образом:

Python GUI编程Программирование GUI на Python

Другие расширения