Frage von dajayer, 29

Python tkinter kreisberechnung?

Hallo ich bin Programmieranfänger und wollte in python mit tkinter ein programm schreiben wo der user einen durchmesser angibt und das programm den flächeninhalt eines kreises ausrechnet bis jz bin ich nur so weit gekommen :

import tkinter
def ende():
    main.destroy()
main = tkinter.Tk()
Lbtitel = tkinter.Label(main, text = "Kreisberechnung")
Lbtitel.pack()
Lb1 = tkinter.Label(main, text = "Gib den Durchmesser eines Kreises an um dessen Flächeninhalt zu bekommen")
Lb1.pack()
E = tkinter.Entry(main)
E.pack()

ich bekomme es einfach nicht raus wo ich die rechnung/formel angeben muss normaler weise (ohne tkinter) löse ich das so x = input() zahl = int(x) print("Flächeninhalt:",zahl / 2 * 3.14 * zahl *zahl) aber wie löse ich das in mit dem tkinter modul... ich hoffe ihr versteht was ich meine und danke schonmal

Antwort
von LifeArtist1, 15

Also als erstes solltest du beachten das du die mainloop funktion aufrufen musst. 

main.mainloop()

Die rufst du dann auf wenn du mit deiner gui fertig bist. Das heißt am Ende. Kümmert sich unteranderem um Events im Fenster.

Deinen Input kriegst du jetzt nicht mehr mit input() sondern eben wie du schon richtig gemacht hast mit einem Entry,- zum Beispiel.

Das heißt du musst jetzt den Text den du in dein Entry schreibst irgendwie aus ihm heraus in eine Variable kriegen. Hinzu kommt natürlich noch das Rechnen. Das machst du am besten mit einem Button und bindest an ihm eine funktion, die immer dann aufgerufen wird wenn du deinen Button klickst.

In kurz vorm also.

<var> = <Entry>.get() #Holt den Text aus dem Entry Widget

<button> = <Button>(master, .... , command = <funktionsreferenz>)

In dieser Funktion verwendest du dann get und berechnest dann A.

Es gibt auch gute Internetquellen die man durch googlen finden kann wie z.Bhttp://effbot.org/tkinterbook/

Dort findest du auch wie man einem Label ein neuen Text zuweist um dann dein Ergebnis anzuzeigen.

Kommentar von dajayer ,

danke!

Keine passende Antwort gefunden?

Fragen Sie die Community

Weitere Fragen mit Antworten