Описание тега tk-toolkit

Набор инструментов Tk - это набор инструментов с графическим интерфейсом, созданный с использованием сценариев, который предназначен для использования с динамическими языками (первоначально Tcl, но также Perl и Python).

Обзор

Набор инструментов Tk - это набор инструментов с графическим интерфейсом, который предназначен для использования с динамическими языками. Первоначально он был разработан Джоном Остерхаутом для использования с Tcl, но впоследствии был развит для поддержки многих других языков (особенно Perl, Python и Ruby).

Tk - это собственный набор инструментов для Windows и Mac OS X. На других платформах на базе Unix он построен непосредственно поверх X11 и по умолчанию имитирует внешний вид, традиционно связанный с Motif (хотя это можно настраивать). Рекомендуется, чтобы в новых приложениях использовались виджеты из набора Ttk (там, где это возможно), поскольку они используют механизм тем, который больше подходит для обработки современного внешнего вида.

Одна из ключевых особенностей Tk заключается в том, что его поведение почти полностью определяется с помощью сценариев (плюс мощный механизм привязки событий). Это дает пользовательскому коду большую гибкость для переопределения происходящего без написания новых низкоуровневых программ. Низкоуровневый движок рисования написан на C и заботится о том, чтобы отложить фактическое рисование до подходящего момента (обычно после обработки всех ожидающих событий GUI), благодаря чему Tk чувствует себя чрезвычайно отзывчивым на действия пользователя.

Примеры

Tk - замечательно простой набор инструментов. В следующем примере показано, как создать окно с меткой "Hello, world". Пример написан на Tcl и предназначен для запуска интерпретатором желаний, который поставляется с каждой установкой tcl / tk:

label .l -text "Hello, world"
pack .l

Другие языки лишь немного более подробны. В отличие от wish, другие языки обычно требуют, чтобы вы импортировали библиотеку tk, создали корневое окно и запустили цикл обработки событий.

Вот тот же пример в Python 2:

import Tkinter as tk
root = tk.Tk()
label = tk.Label(root, text="Hello, world")
label.pack()
root.mainloop()

Связанные теги

  • ttk - вопросы, связанные с тематическими виджетами tk
  • tkinter - вопросы, связанные с реализацией tk на Python
  • perltk - вопросы, связанные с реализацией tk на perl

Общие справочные ссылки