- TkInter
-
Tkinter (от англ. Tk interface) — это встроенная графическая библиотека на основе средств GNU/UNIX‐подобных систем, портирована в том числе и на Microsoft Windows, Apple Mac OS). В связи с тем, что создатель языка Python Гвидо ван Россум считает данную библиотеку весьма стабильной и устойчивой, именно она входит в стандартный дистрибутив Python.
Содержание
Назначение
Библиотека предназначена для организации диалогов в программе с помощью оконного графического интерфейса (GUI). В составе библиотеки присутствуют общие графические компоненты:
- Toplevel
- Tk
- Frame
- Label
- Entry
- Text
- Canvas
- Button
- Radiobutton
- Chekbutton
- Scale
- Listbox
- Scrollbar
- OptionMenu
- Spinbox
- LabelFrame
- PanedWindow
Также следует отметить, что в Python присутствует набор дополнительных средств в модулях:
- Canvas
- Dialog
- FileDialog
- FixTk
- ScrolledText
- SimpleDialog
- Tix
- Tkconstants
- Tkdnd
- tkColorChooser
- tkCommonDialog
- tkFileDialog
- tkFont
- tkMessageBox
- tkSimpleDialog
- turtle
Пример: программа Hello World
from Tkinter import * tk = Tk() tk.title("Hello World!") def button_clicked(): print "Hello World!" button=Button(tk,text="Press Me",command=button_clicked) button.pack(fill=BOTH) tk.mainloop()
Разбор программы
Приведённый пример демонстрирует простейшее приложение GUI на Python. Первая строка программы импортирует модуль Tkinter:
from Tkinter import *
В результате импортирования в пространстве имён программы (скрипта), появляются имена, встроенные в Tkinter, к которым можно обращаться непосредственно. Необходимо заметить, что масовое импортирование имён может привести к их конфликту. Кроме того, для интерпретатора требуется больше времени, чтобы в списке доступных имён найти нужное.
Следующая команда создаёт фрейм-окно (далее окно):
tk = Tk()
Седующая команда меняет заголовок окна:
tk.title("Hello World!")
Далее следует определение обработчика события «нажата кнопка мыши». Событие отностися элементу Buton(Кнопка). Типы событий и графические элементы определены в графической библиотеке Tkinter.
def button_clicked(): print "Hello World!"
В результате нажатия кнопки в консоли будет выведено сообщение «Hello, World!». Сообщение будет выводиться каждый раз при нажатии кнопки.
См. также
- wxPython
- PyGTK
- PyFLTK
Ссылки
Wikimedia Foundation. 2010.