Tk 8.6.6 в Windows 10 | |
Исходный автор (и) | Джон Остерхаут |
---|---|
Разработчик (и) | Tcl Core Team |
Первоначальный выпуск | 1991; 29 лет назад (1991 г.) |
Стабильный выпуск | 8.6.10 / 11 марта 2020 г.; 7 месяцев назад (2020-03-11) |
Предварительный выпуск | 9.0a1 / 26 ноября 2019 г.; 11 месяцев назад (26.11.2019) |
Репозиторий | |
Написано на | C |
Операционная система | Кросс-платформенная |
Платформа | Кросс-платформенность |
Тип | Набор инструментов виджета |
Лицензия | BSD -стайл |
Веб-сайт | www.tcl.tk |
Tk- это бесплатный, кроссплатформенный набор инструментов виджетов с открытым исходным кодом, который предоставляет библиотеку базовых элементов виджетов GUI для создание графического пользовательского интерфейса (GUI) на многих языках программирования.
Tk предоставляет ряд виджетов, обычно необходимых для разработки настольных приложений, таких как кнопка, меню, холст, текст, рамка, метка и т. Д. Tk был перенесен для работы на большинстве разновидностей Linux, Mac OS, Unix и Microsoft Windows. Как и Tcl, Tk поддерживает Unicode в Basic Multilingual Plane, но он еще не был расширен для обработки текущего расширенного полного Unicode ( например, UTF-16 из UCS-2, который поддерживает Tk).
Tk был разработан с возможностью расширения, и доступен широкий спектр расширений, предлагающих новые виджеты или другие возможности.
Начиная с Tcl / Tk 8, он предлагает «собственный внешний вид» ( например, меню и кнопки отображаются как «родное» программное обеспечение для любой данной платформы). Основные особенности версии 8.5 включают новый механизм создания тем, первоначально называвшийся Tk Tile, но теперь обычно называемый «тематическим Tk», а также улучшенный рендеринг шрифтов. Основные особенности версии 8.6 включают поддержку PNG и наклонный текст.
Tk был разработан John Ousterhout как расширение для языка сценариев Tcl. Впервые он был публично выпущен в 1991 году. Tk управление версиями выполнялось отдельно от Tcl до версии 8.0.
Tk изначально был написан для Unix / X11 и оказался чрезвычайно популярным среди программистов в 1990-х годах благодаря тому, что его было легче изучить и использовать, чем Motif и другие инструменты X11 того времени. Tk был также перенесен на платформы Microsoft Windows и Macintosh, начиная с Tk 4.2, и улучшен за счет нативного внешнего вида в Tk 8.0 (выпущен в 1997 году). Чтобы отметить популярность и значимость Tk в 1990-х годах, Оустерхауту была присуждена ACM Software System Award в 1997 году за Tcl / Tk:
Победитель премии ACM Software System: Джон К. Остерхаут Для языка сценариев Tcl, который позволяет разработчикам создавать сложные системы из уже существующих компонентов. Встроенный Tk предоставляет простой механизм для создания графических пользовательских интерфейсов. Вместе они составляют мощное дополнение к репертуару программного обеспечения.Интерес к Tk значительно ослаб с конца 1990-х годов и позже. Внешний вид по умолчанию в Unix по-прежнему имитирует Motif, несмотря на массовую замену Motif такими инструментами, как FLTK, Qt и GTK. Виджеты, которые стали широко использоваться в приложениях (например, деревья, поля со списком, записные книжки с вкладками), не были доступны в ядре Tk, а были доступны только через несколько, часто конкурирующих надстроек.
Tk 8.5, выпущенный в конце 2007 г., исправил некоторые из этих проблем, добавив недостающие виджеты в ядро, представив новый механизм тем и модернизировав внешний вид Unix. Однако из-за того, что для включения этих усовершенствований потребовались некоторые изменения кода, многие существующие приложения сохраняют ощущение старого Motif, которым стал известен Tk.
Tk - это платформенно-независимый графический интерфейс. фреймворк, разработанный для Tcl. Из оболочки Tcl (tclsh) Tk можно вызвать с помощью команды package require Tk
. Программа wish (WIndowing SHell) предоставляет способ вызвать оболочку tclsh в графическом окне, а также предоставляет Tk.
Tk имеет следующие характеристики:
Библиотека, написанная на одном языке программирования, может использоваться в другой язык, если записаны привязки ; Tk интегрирован с языком Tcl. Различные другие языки имеют привязки для Tk, частичный список которых находится на веб-сайте Tk. Существуют привязки для дополнительных языков, которые могут отсутствовать в списке, включая Ada (называемый TASH), Haskell (называемый HTk), Perl, Python (называется Tkinter ), Ruby, Rexx и Common Lisp.
Существует несколько способов использования Tk из Perl : модули Perl Tcl :: Tk и Tkx, оба из которых используют Tcl в качестве моста для доступа к Tk, и Perl / Tk, который обеспечивает собственный доступ Perl к структурам Tk. Привязка Python использует Tcl как мост к Tk.
Tk предоставляет различные виджеты. Базовые виджеты встроены в виджеты верхнего уровня
, которые, в свою очередь, обычно размещаются в операционной системе в плавающих окнах, которые можно перемещать по экрану.
button
холст
контрольная кнопка
combobox
entry
frame
label
labelframe
listbox
menu
menubutton
message
notebook
panedwindow
индикатор выполнения
переключатель
масштаб
полоса прокрутки
разделитель
sizegrip
spinbox
текст
tk_optionMenu
treeview
tk_chooseColor
- открывает диалоговое окно для выбора цвета пользователем.tk_chooseDirectory
- открывает диалоговое окно, в котором пользователь может выбрать каталог.tk_dialog
- создает модальное диалоговое окно и ожидает ответа.tk_getOpenFile
- открывает диалоговое окно, в котором пользователь может выбрать файл для открытия.tk_getSaveFile
- открывает диалоговое окно для пользователь должен выбрать файл для сохранения.tk_messageBox
- всплывает окно сообщения и ждет, пока ra, ответ пользователя.tk_popup
- отправляет всплывающее меню.toplevel
- создает и управляет виджетами верхнего уровня.Базовые виджеты расположены в окна верхнего уровня
с использованием диспетчеров геометрии:
place
- позиционирует виджеты в абсолютных положенияхgrid
- размещает виджеты в сеткеpack
- упаковывает виджеты в полостьВ Викиучебнике есть книга по теме: Программирование на Tcl / Tk |