
Розробіть простий калькулятор засобами Tkinter. Приклад на зображенні. Після чого спробуйте його
модернізувати засобами customtkinter. Кодом в пайтон

Ответы на вопрос

Відповідь:
Ось простий калькулятор, розроблений з використанням бібліотеки Tkinter у Python:
```python
import tkinter as tk
def button_click(number):
current = entry.get()
entry.delete(0, tk.END)
entry.insert(0, current + str(number))
def clear():
entry.delete(0, tk.END)
def calculate():
current = entry.get()
try:
result = eval(current)
entry.delete(0, tk.END)
entry.insert(0, result)
except Exception as e:
entry.delete(0, tk.END)
entry.insert(0, "Помилка")
root = tk.Tk()
root.title("Простий калькулятор")
entry = tk.Entry(root, width=30)
entry.grid(row=0, column=0, columnspan=4)
buttons = [
("7", 1, 0), ("8", 1, 1), ("9", 1, 2),
("4", 2, 0), ("5", 2, 1), ("6", 2, 2),
("1", 3, 0), ("2", 3, 1), ("3", 3, 2),
("0", 4, 1),
("+", 1, 3), ("-", 2, 3), ("*", 3, 3), ("/", 4, 3),
("=", 4, 2), ("C", 4, 0)
]
for (text, row, col) in buttons:
button = tk.Button(root, text=text, padx=20, pady=20, command=lambda t=text: button_click(t))
button.grid(row=row, column=col)
root.mainloop()
```
Цей код створює простий калькулятор з графічним інтерфейсом Tkinter. За допомогою функцій `button_click`, `clear` і `calculate` обробляються події натискання кнопок і обчислення результату.
Щоб модернізувати цей калькулятор за допомогою бібліотеки `customtkinter`, спершу вам потрібно встановити цю бібліотеку, а потім переписати код інтерфейсу та обробки подій відповідно до функціональних можливостей цієї бібліотеки.



Започнемо з розробки простого калькулятора засобами бібліотеки Tkinter у Python. Ось приклад коду для простого калькулятора:
pythonimport tkinter as tk
def on_click(event):
text = event.widget.cget("text")
if text == "=":
try:
result = eval(screen.get())
screen.set(result)
except Exception as e:
screen.set("Помилка")
elif text == "C":
screen.set("")
else:
current_text = screen.get()
current_text += text
screen.set(current_text)
root = tk.Tk()
root.title("Калькулятор")
screen = tk.StringVar()
entry = tk.Entry(root, textvar=screen, font="Helvetica 20")
entry.grid(row=0, column=0, columnspan=4)
buttons = [
"7", "8", "9", "/",
"4", "5", "6", "*",
"1", "2", "3", "-",
"0", ".", "C", "+",
"="
]
row_val = 1
col_val = 0
for button in buttons:
tk.Button(root, text=button, padx=20, pady=20, font="Helvetica 15", command=lambda b=button: on_click(b)).grid(row=row_val, column=col_val)
col_val += 1
if col_val > 3:
col_val = 0
row_val += 1
root.mainloop()
Цей код створює простий калькулятор з інтерфейсом Tkinter. Тепер давайте спробуємо модернізувати його засобами бібліотеки customtkinter
. Спочатку вам потрібно встановити цю бібліотеку, якщо вона не встановлена:
pip install customtkinter
Тепер перепишемо код для використання бібліотеки customtkinter
:
pythonfrom tkinter import *
from customtkinter import EntryStyle, ButtonStyle, TkinterStyle
def on_click(event):
text = event.widget.cget("text")
if text == "=":
try:
result = eval(screen.get())
screen.set(result)
except Exception as e:
screen.set("Помилка")
elif text == "C":
screen.set("")
else:
current_text = screen.get()
current_text += text
screen.set(current_text)
root = Tk()
root.title("Калькулятор")
style = TkinterStyle(root)
style.set_button_style(ButtonStyle(font=("Helvetica", 15), padx=20, pady=20))
style.set_entry_style(EntryStyle(font=("Helvetica", 20)))
screen = StringVar()
entry = Entry(root, textvar=screen, style="entry")
entry.grid(row=0, column=0, columnspan=4)
buttons = [
"7", "8", "9", "/",
"4", "5", "6", "*",
"1", "2", "3", "-",
"0", ".", "C", "+",
"="
]
row_val = 1
col_val = 0
for button in buttons:
Button(root, text=button, style="button", command=lambda b=button: on_click(b)).grid(row=row_val, column=col_val)
col_val += 1
if col_val > 3:
col_val = 0
row_val += 1
root.mainloop()
Цей код створює той самий калькулятор, але використовуючи стилізацію елементів інтерфейсу за допомогою customtkinter
. Після встановлення бібліотеки і зміни стилів за вашими потребами, ви можете використовувати її для створення більш сучасного і зручного інтерфейсу для калькулятора.


Похожие вопросы
Топ вопросов за вчера в категории Информатика








Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili