summaryrefslogtreecommitdiff
path: root/PYTHON/TKINTER.md
diff options
context:
space:
mode:
authorvlapa <vlapa@ya.ru>2026-06-13 20:33:26 +0300
committervlapa <vlapa@ya.ru>2026-06-13 20:33:26 +0300
commite5abc1fe99340b979b18864d978179f71fe8f5c5 (patch)
tree98fd0ad7c6d0744894d6e74e446daacd9e6dd1b5 /PYTHON/TKINTER.md
First
Diffstat (limited to 'PYTHON/TKINTER.md')
-rw-r--r--PYTHON/TKINTER.md52
1 files changed, 52 insertions, 0 deletions
diff --git a/PYTHON/TKINTER.md b/PYTHON/TKINTER.md
new file mode 100644
index 0000000..23b9658
--- /dev/null
+++ b/PYTHON/TKINTER.md
@@ -0,0 +1,52 @@
+```python
+from tkinter import *
+
+root = Tk()
+root.title("Hello!")
+root.iconbitmap(default="favicon.ico") # определим в одной папке с файлом приложения какой-нибудь файл с иконкой, допустип, он называется "favicon.ico". через параметр `default` в метод iconbitmap передается путь к иконки. В данном случае файл иконки располагается с файлом приложения в одной папке, поэтому в качестве пути указывается просто имя файла.
+
+root.geometry("300x250+400+200")
+# Теперь строка в методе geometry имеет следующий формат: "Ширина x Высота + координатаX + координатаY". То есть при запуске окно шириной в 300 единиц и высотой 250 единиц будет находиться на 400 пикселей вправо и на 200 пикселей вниз от верхнего левого угла экрана.
+
+root.update_idletasks()
+print(root.geometry()) # Для получения данных о размере и позиции также можно использовать метод geometry(), который возвращает данные значения в виде строки в формате "widthxheight+x+y". Чтобы приложение еще до метода `mainloop()` принименило для окна переданные ему значения по ширине, высоте и позиции, вызывается метод `root.update_idletasks()`. В итоге вызов `root.geometry()` возвратить строку "300x250+400+200"
+
+root.resizable(False,False) # Можно-ли растягивать: ширина - высота
+
+root.mainloop()
+
+```
+### Виджеты. Основные:
+
+- Button: кнопка
+- Label: текстовая метка
+- Entry: однострочное текстовое поле
+- Text: многострочное текстовое поле
+- Checkbutton: флажок
+- Radiobutton: переключатель или радиокнопка
+- Frame: фрейм, который организует виджеты в группы
+- Listbox: список
+- Combobox: выпадающий список
+- Menu: элемент меню
+- Scrollbar: полоса прокрутки
+- Treeview: позволяет создавать древовидные и табличные элементы
+- Scale: текстовая метка
+- Spinbox: список значений со стрелками для перемещения по элементам
+- Progressbar: текстовая метка
+- Canvas: текстовая метка
+- Notebook: панель вкладок
+
+### Получение информации о виджете
+
+Для получения информации о виджете можно использовать ряд его атрибутов. Рассмотрим некоторые из них:
+
+- winfo_class: возвращает класс виджета, например, для кнопки это класс `TButton`
+- winfo_children: возвращает для текущего виджета список вложенных виджетов
+- winfo_parent: возвращает родительский виджет
+- winfo_toplevel: возвращает окно, которое содержит данный виджет
+- winfo_width и winfo_height: текущая ширина и высота виджета
+- winfo_reqwidth и winfo_reqheight: запрошенная виджетом ширина и высота
+- winfo_x и winfo_y: x и y координаты верхнего левого угла виджета относительно родительского элемента
+- winfo_rootx и winfo_rooty: x и y координаты верхнего левого угла виджета относительно экрана
+- winfo_viewable: указывает, отображается ли виджет или скрыт
+