Поле для введення Entry, багаторядкове полеText
Однорядкове поле Entry - це поле для ввелення користувачем тексту в один рядок.
x=Entry(root,width=18,bd=5)
Багаторядкове поле Text - призначене для введення багаторядкового тексту .
k=Text(root,width=30, font="Arial 12",wrap=Word)
Спочатку створюємо вінко. У вікні створюємо поле для введення. І для відображення об'єктів не забуваємо про метод pack()
Властивості
bd- ширина межі
wrap- слова не будуть розриватися при переносі на новий рядок
show — відображувані символи
Методи
pack()- показати
grid()- таблиця, застосовується для розміщення елементів в вікні( row- рядок, column - стовпець, columnspan - об'єднати клітинки по горизонталі, rowspan - об'єднати клітинки по вертикалі)
get() - взяти текст з текстового поля
insert() - вставити текст
delete(0, END) - видалити текст з 0 символу до кінця
Для того, щоб вибрати текст з поля для введення скористаємося методом get():
name_entry.get() або x.get() де name_entry і x - це змінні(можемо називати на свій смак)
Для виведення об'єктів в таблиці використовують метод grid(). В дудках вказують номер рядка та номер стовпця.
name.grid(row=0, column=0).
Приклад1. Створити вікно з написом "Привіт" та однорядковим полем для введення
Приклад2. Створити вікно з написом "Вірш" та багаторядковим полем для введення. Заповни поле стовпчиком вірша.
Приклад3. Створити вікно з написами "Введіть ім'я ", "Введіть прізвище" та полями для введення імені та прізвища. Запрограмувати кнопку "Привітай мене" так, щоб в третьому написі виводився той текст, що ви ввели в поля для введення.
В цьому прикладі ми бачимо, що для того, що об'єкти були розміщені по порядку. Команди програми також розміщені по порядку.
Для того, щоб розмістити об'єкти один напроти одного, користуються методом grid() , який умовно розділяє вікно на клітинки(ніби створює таблицю). Кожен об'єкт поміщають в різні клітинки таблиці. Адреса кожної клітинки складається з номера рядка(row) та номера стовпця(column). Клітинки можна об'єднувати як по горизонталі(columnspan), так і по вертикалі(rowspan).
Також потрібно звернути увагу, що при розділенні вікна на таблицю, не використовують метод pack() для відображення. Замість нього використовують метод grid().
Приклад4. Створити вікно з Прикладу 3. Розмістити поля для введення навпроти написів "Введіть ім'я ", "Введіть прізвище"
from tkinter import *
from tkinter import messagebox
root = Tk ()
def display():
l3=Label(text="Привіт"+' '+e1.get()+' '+e2.get())
l3.grid(row=2, column=1)
root.title('Написи')
l1=Label(text="Введіть ім'я")
l1.grid(row=0, column=0)
e1=Entry(root,width=18,bd=5)
e1.grid(row=0, column=1)
l2=Label(text="Введіть Прізвище")
l2.grid(row=1, column=0)
e2=Entry(root,width=18,bd=5)
e2.grid(row=1, column=1)
b1=Button(root, text="Привітайся",width=10, command=display, bg='#c86464')
b1.grid(row=2, column=0)
root.mainloop()
В уроці я не всюди витерла команду pack(), точніше забула її витерти. Для таблиці її не пишуть.