282.15K
Категория: ПрограммированиеПрограммирование

Изменение конфигурации виджетов

1.

Изменение конфигурации виджетов
преподаватель Маркова
АВ

2.

Пусть задан код программы
def Perevod(event):
ch = int(SS10.get())
rach = bin(ch)[2:]
SS2.set(rach)
def Gudbay(event):
window.destroy()
from tkinter import*
window = Tk()
window.geometry('400x100')
lbkn = Label(text = 'Введите число в 10СС:', font = 'Batang 14')
lbkn1 = Label(text = 'Число в 2СС:', font = 'Batang 14')
SS10 = StringVar()# переменная имеет целочисленное значение
kn = Entry(width = 20, textvariable = SS10)
SS2 = StringVar()
kn1 = Entry(width = 20,textvariable = SS2)
lbkn2 = Button(text = 'Перевод', font = 'Batang 14', bg = 'yellow')
lbkn3 = Button(text = 'Выход', font = 'Batang 14', bg = 'yellow')
lbkn.grid(row = 0, column = 0)
kn.grid(row = 0, column = 1)
lbkn1.grid(row = 1, column = 0)
kn1.grid(row = 1, column = 1)
lbkn2.grid(row = 2, column = 0)
lbkn3.grid(row = 2, column = 1)
lbkn2.bind('<Button - 1>', Perevod)#bind - функция для связи кнопки и функции
lbkn3.bind('<Button - 1>', Gudbay)

3.

Задание: Измените конфигурацию
виджета
Метод configure() или config()
Метод инструкции:
<имя виджета>.configure(<имя свойства> =<новое значение>)
Пример:
lbkn2.configure(bg = 'red')
или
<имя виджета> [<имя свойства>] = <новое значение>
Пример:
lbkn3['font'] = 'Arial 22'

4.

Удаление в поле ввода данных
Метод delete(a, END) a – номер первого символа, до END
-последнего символа
Задание: После перевода числа в 2СС очищать
области ввода(две области)
Решение
1. Создайте кнопку «Очистить область»
2. Свяжите кнопку с функцией Delite
3. Создайте функцию Delite
def Delite(event):
kn.delete(0, END)
kn1.delete(0, END)

5.

Вставляет в поле данные
Метод insert(a, переменная хранящая значение) a –
номер первого символа начиная с которого
вставляется новое значение, переменная
Задание: После перевода числа в 2СС вставить
результат из функции в поле ввода «Число в 2СС»
Решение
def Perevod(event):
ch = int(SS10.get())
rach = bin(ch)[2:]
#SS2.set(rach)
kn1.insert(0, rach)

6.

Работа со звуком
import winsound импортируем модуль работы со звуком
lbkn4 = Button(text = 'Очистите область', command = Zvuk) задаем
свойство command, только ЛКМ
def Zvuk():
winsound.Beep(2000, 1000) звучит сигнал с частотой 2000 Герц и
продолжительностью 1000 миллисекунд
или
lbkn4 .bind(‘<Button - 2>’, Zvuk) любое событие
def Zvuk(event):
winsound.Beep(2000, 1000) звучит сигнал с частотой 2000 Герц и
продолжительностью 1000 миллисекунд

7.

Какая кнопка нажата?
def Lev(event):
lb.config(text = ‘Вы нажали левую')
def Prav(event):
lb.config(text = ‘Вы нажали правую')
from tkinter import*
import winsound
window = Tk()
window.title(‘Какую кнопку вы нажали')
window.geometry('400x200')
kn = Button(text = 'Нажмите любую кнопку мыши')
lb = Label(text = ‘Пока ничего не нажато')
kn.pack()
lb.pack()
kn.bind('<Button - 1>', Lev)
kn.bind('<Button - 3>', Prav)
window.mainloop()

8.

Повтор
from tkinter import*
import winsound
window = Tk()
window.title('повторение')
window.geometry('400x200')
lb = Label(text = 'Введите группу')
r = StringVar()
kn = Entry(width = 30, textvariable = r)
lb1 = Label(text = 'Ваша группа')
kn1 = Entry(width = 30, textvariable = r)
lb.pack()
kn.pack()
lb1.pack()
kn1.pack()
window.mainloop()

9.

Задачи
English     Русский Правила