Neues Fenster erstellen

Fragen zu Tkinter.
Antworten
Luisa00
User
Beiträge: 3
Registriert: Donnerstag 24. Februar 2022, 12:15

Hey Leute,
ich hab mittlerweile einen Code geschrieben für einen Taschenrechner. Allerdings würde ich den Code ungerne verändern. Das Problem ist, dass mir kein Ergebnis angezeigt wird. Ich glaube das mein Problem dies ist, dass mein String 'calculation' keinen Platz hat irgendwo angezeigt zu werden. Deswegen wollte ich fragen wie man bei meinem Code ein neues Fenster erstellt, wo dann das Ergebnis angezeigt werden kann. Danke im voraus.

import tkinter as tk
rechner = tk.Tk()
rechner.title("Taschenrechner")


gui_items = list()
button_values = ['1', '2', '3', '+', '4', '5', '6', '-','7', '8','9', '*','0', '=', '/', 'AC']




def create_button(value):
button = tk.Button(text=value)
gui_items.append(button)

for val in button_values:
create_button(val)



output_label = tk.Label(text='Hallo Klasse')

output_label.grid(row=0, columnspan=10 )


column_count = 0
row_count = 1
max_columns = 4


for item in gui_items:
item.grid(row=row_count, column=column_count)

column_count += 1


if column_count == max_columns:
column_count = 0
row_count += 1
if __name__ == '__main__':
rechner.mainloop()


calculation = str()

def add_button_text_to_calculation(value):
global calculation

if value == 'AC':
calculation = str()
output_label['text'] = '...'
return

if value == '=':
calculate(calculation)
calculation = str()
return

calculation = calculation + value
output_label['text'] = calculation



def calculate(calc):
try:
result = eval(calc)
print(result)
output_label['text'] = result
except Exception as e:
print(e)
output_label['text'] = 'Error'



def create_button(value):
button = tk.Button(text=value, command=lambda: add_button_text_to_calculation(value))
gui_items.append(button)
Sirius3
User
Beiträge: 17712
Registriert: Sonntag 21. Oktober 2012, 17:20

Warum hast Du einen neuen Thread gestartet, obwohl das thematisch doch perfekt zu Deiner anderen Frage passt.
Die Probleme an Deinem Code habe ich dort auch schon beschrieben, das gilt hier immer noch.
Deine Aussage, dass Du eigentlich nichts lernen willst, und Deine Weigerung, Hilfe anzunehmen, macht es für mich einfach, mich hier nicht weiter zu engagieren.
Antworten