Advertisement
Guest User

Untitled

a guest
Jun 29th, 2022
34
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.52 KB | None | 0 0
  1. # GUI - Программа калькулятор
  2. # урок 2 K1 - L38-Calc
  3.  
  4. def add_digit(digit):
  5.     value = calc.get() + str(digit)
  6.     calc.delete(0, tk.END)
  7.     calc.insert(0, value)
  8.  
  9. def make_digit_button(digit):
  10.     return tk.Button(text = digit, bd = 5, font = ('Arial', 13), command = lambda: add_digit(digit))
  11.  
  12. def make_operation_button(operation):
  13.     return tk.Button(text = operation, bd = 5, font = ('Arial', 13), fg = '#CD00FF', command = lambda: add_operation(operation))
  14.  
  15. def make_calc_button(operation):
  16.     return tk.Button(text = operation, bd = 5, font = ('Arial', 13), fg = '#CD00FF', command = lambda: add_operation(operation))
  17.  
  18. def add_operation(operation):
  19.     value = calc.get()
  20.     if value[-1] in '+':
  21.         value = value[:-1]
  22.     calc.delete(0, tk.END)
  23.     calc.insert(0, value + operation)
  24.  
  25. import tkinter as tk
  26. win = tk.Tk()
  27. win.geometry('240x280+100+200')
  28. win.title('Калькулятор')
  29. win['bg'] = '#486A97'
  30. photo = tk.PhotoImage(file = 'icon.png')
  31. win.iconphoto(False, photo)
  32.  
  33. calc = tk.Entry(win, justify = tk.RIGHT, font = ('Arial', 15), width = 15)
  34. calc.grid(row = 0, column = 0, columnspan = 4, stick = 'we', padx = 5, pady = 5)
  35.  
  36. make_digit_button(1).grid(row = 1, column = 0, stick = 'wens', padx = 5, pady = 5)
  37. make_digit_button(2).grid(row = 1, column = 1, stick = 'wens', padx = 5, pady = 5)
  38. make_digit_button(3).grid(row = 1, column = 2, stick = 'wens', padx = 5, pady = 5)
  39. make_digit_button(4).grid(row = 2, column = 0, stick = 'wens', padx = 5, pady = 5)
  40. make_digit_button(5).grid(row = 2, column = 1, stick = 'wens', padx = 5, pady = 5)
  41. make_digit_button(6).grid(row = 2, column = 2, stick = 'wens', padx = 5, pady = 5)
  42. make_digit_button(7).grid(row = 3, column = 0, stick = 'wens', padx = 5, pady = 5)
  43. make_digit_button(8).grid(row = 3, column = 1, stick = 'wens', padx = 5, pady = 5)
  44. make_digit_button(9).grid(row = 3, column = 2, stick = 'wens', padx = 5, pady = 5)
  45. make_digit_button(0).grid(row = 4, column = 0, stick = 'wens', padx = 5, pady = 5)
  46.  
  47. make_operation_button('+').grid(row = 1, column = 3, stick = 'wens', padx = 5, pady = 5)
  48.  
  49. make_calc_button('=').grid(row = 4, column = 2, stick = 'wens', padx = 5, pady = 5)
  50.  
  51. win.grid_columnconfigure(0, minsize = 60)
  52. win.grid_columnconfigure(1, minsize = 60)
  53. win.grid_columnconfigure(2, minsize = 60)
  54. win.grid_columnconfigure(3, minsize = 60)
  55.  
  56. win.grid_rowconfigure(1, minsize = 60)
  57. win.grid_rowconfigure(2, minsize = 60)
  58. win.grid_rowconfigure(3, minsize = 60)
  59. win.grid_rowconfigure(4, minsize = 60)
  60.  
  61.  
  62. win.mainloop()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement