Similar presentations:
Создание калькулятора, используя tkinter
1.
Создание калькулятора,используя tkinter
2.
Основные компонентыПоле ввода чисел
Кнопки с
математическими
операциями
Кнопки с цифрами
3.
Окно калькулятораimport tkinter as tk
calculate = tk.Tk()
calculate.geometry("240x260+100+200")
calculate['bg'] = '#555555'
calculate.title('калькулятор')
calculate.mainloop()
4.
rowРасположение кнопок в grid
column
5.
Поле ввода и кнопкиcalc=tk.Entry(calculate)
calc.grid(row = 0, column = 0)
tk.Button(text='1').grid(row=1, column=0)
tk.Button(text='2').grid(row=1, column=1)
tk.Button(text='3').grid(row=1, column=2)
tk.Button(text='4').grid(row=2, column=0)
tk.Button(text='5').grid(row=2, column=1)
tk.Button(text='6').grid(row=2, column=2)
tk.Button(text='7').grid(row=3, column=0)
tk.Button(text='8').grid(row=3, column=1)
tk.Button(text='9').grid(row=3, column=2)
tk.Button(text='0').grid(row=4, column=0)
6.
Настройка размера кнопокcalculate.grid_columnconfigure(0,minsize=60)
calculate.grid_columnconfigure(1,minsize=60)
calculate.grid_columnconfigure(2,minsize=60)
calculate.grid_rowconfigure(1,minsize=60)
calculate.grid_rowconfigure(2,minsize=60)
calculate.grid_rowconfigure(3,minsize=60)
calculate.grid_rowconfigure(4,minsize=60)
7.
Функции для ввода чисел и созданиякнопок
def add_digits(digit):
value = calc.get() + str(digit)
calc.delete(0,tk.END)
calc.insert(0, value)
def make_digit_button(digit):
return tk.Button(text=digit, bd=5, font=('Arial',13),
command=lambda:add_digits(digit))
8.
Кнопки ввода математических операцийdef make_operation_button(operation):
return tk.Button(text=operation, bd=5, font=('Arial',13),fg=’red’,
command=lambda:add_digits(operation))
make_operation_button('+').grid(row=1, column=3, stick='wens', padx=5,
pady=5)
make_operation_button('-').grid(row=2, column=3, stick='wens', padx=5,
pady=5)
make_operation_button('*').grid(row=3, column=3, stick='wens', padx=5,
pady=5)
make_operation_button('/').grid(row=4, column=3, stick='wens', padx=5,
pady=5)
9.
Замена знаков и нуля в началеdef add_digits(digit):
value = calc.get()
if value[0]='0':
value = value[1:]
calc.delete(0,tk.END)
calc.insert(0, value+digit)
def add_operation(operation):
value = calc.get()
if value[-1] in '-+*/':
value=value[:-1]
calc.delete(0,tk.END)
calc.insert(0, value+operation)