Open murtadhaja opened 6 months ago
import tkinter as tk
def button_click(event): current_text = display_var.get() button_text = event.widget.cget("text")
if button_text == "=": try: result = eval(current_text) display_var.set(result) except Exception as e: display_var.set("Error") elif button_text == "C": display_var.set("") else: display_var.set(current_text + button_text)
root = tk.Tk() root.title("حاسبة")
display_var = tk.StringVar()
display_entry = tk.Entry(root, textvariable=display_var, font=("Arial", 18), bd=5, justify="right", bg="white", relief="ridge") display_entry.grid(row=0, column=0, columnspan=4, sticky="nsew", padx=10, pady=10)
buttons = [ "7", "8", "9", "/", "4", "5", "6", "*", "1", "2", "3", "-", "0", ".", "=", "+", "C" ]
row = 1 col = 0 for button in buttons: btn = tk.Button(root, text=button, font=("Arial", 14), padx=20, pady=10, bg="#4CAF50", fg="white", relief="raised") btn.grid(row=row, column=col, padx=5, pady=5, sticky="nsew") btn.bind("", button_click) col += 1 if col > 3: col = 0 row += 1
programming_label = tk.Label(root, text="برمجة: مرتضى الجياشي", font=("Arial", 12), fg="black") programming_label.grid(row=5, column=3, padx=5, pady=5, sticky="se")
for i in range(4): root.grid_rowconfigure(i, weight=1) for i in range(4): root.grid_columnconfigure(i, weight=1)
root.mainloop()
حاسبة
murtta
apk
this very good
good
import tkinter as tk
Function to update the display when a button is clicked
def button_click(event): current_text = display_var.get() button_text = event.widget.cget("text")
Create the main window
root = tk.Tk() root.title("حاسبة")
Variable to hold the display text
display_var = tk.StringVar()
Entry widget to display the numbers and result
display_entry = tk.Entry(root, textvariable=display_var, font=("Arial", 18), bd=5, justify="right", bg="white", relief="ridge") display_entry.grid(row=0, column=0, columnspan=4, sticky="nsew", padx=10, pady=10)
Buttons for numbers and operators
buttons = [ "7", "8", "9", "/", "4", "5", "6", "*", "1", "2", "3", "-", "0", ".", "=", "+", "C" ]
Create and place buttons in the grid
row = 1 col = 0 for button in buttons: btn = tk.Button(root, text=button, font=("Arial", 14), padx=20, pady=10, bg="#4CAF50", fg="white", relief="raised") btn.grid(row=row, column=col, padx=5, pady=5, sticky="nsew") btn.bind("", button_click)
col += 1
if col > 3:
col = 0
row += 1
Add programming credit label
programming_label = tk.Label(root, text="برمجة: مرتضى الجياشي", font=("Arial", 12), fg="black") programming_label.grid(row=5, column=3, padx=5, pady=5, sticky="se")
Configure grid rows and columns to expand with the window
for i in range(4): root.grid_rowconfigure(i, weight=1) for i in range(4): root.grid_columnconfigure(i, weight=1)
root.mainloop()