Seite 1 von 1

Except funktioniert nicht?

Verfasst: Samstag 11. April 2020, 13:44
von EddiMiY
Moin Leute :D
Ich brauche dringend hilfe bei dem unteren code, ich habe dort unsere Formelsammlung(wenn auch nicht effektiv) in ein GUI gebastelt.
Nun möchte ich dass ich nurnoch zahlen eingeben kann und keine Buchstaben. Also versuche ich den fehler ab zu fangen der mir ausgegeben wird wenn ich ein buchstabe anstatt einer zahl eingebe aber irgendwas mache ich falsch(ist mein erstes mal mit try und except).
Ganz unten steht mein except :D
vielleicht versteht ja jemand mein programm, ich komme in dem chaos klar also bitte nur wie man den fehler abfangen kann oder wie man ein entry feld auf numbers only umstellt :D

danke schonam im vorraus

Code: Alles auswählen

import tkinter as tk
import math
# variable.get() holt den aktuellen Wert der Variable
# variable.set() gibt den aktuellen Wert der Variable vor
try:
    ####Funktionen
    def test(event):
        if Geometrievariable.get()=="Dreieck": 
            LbLbeschriftung1.set("g")
            LbLbeschriftung2.set("h")
            LbLbeschriftung3.set("a")
            LbLbeschriftung4.set("b")
            LbLbeschriftung5.set("γ°")
            LbLbeschriftung6.set("---")
            Art1LbLbeschrifftung.set("Flächeninhalt=")
            Art2LbLbeschrifftung.set("Umfang=")
            Art3LbLbeschrifftung.set(" ")
            photoLbL["image"]=imgDreieck
        elif Geometrievariable.get()=="Quadrat":
            LbLbeschriftung1.set("a")
            LbLbeschriftung2.set("---")
            LbLbeschriftung3.set("---")
            LbLbeschriftung4.set("---")
            LbLbeschriftung5.set("---")
            LbLbeschriftung6.set("---")
            Art1LbLbeschrifftung.set("Flächeninhalt=")
            Art2LbLbeschrifftung.set("Umfang=")
            Art3LbLbeschrifftung.set(" ")
            photoLbL["image"]=imgQuadrat
        elif Geometrievariable.get()=="Rechteck": 
            LbLbeschriftung1.set("a")
            LbLbeschriftung2.set("b")
            LbLbeschriftung3.set("---")
            LbLbeschriftung4.set("---")
            LbLbeschriftung5.set("---")
            LbLbeschriftung6.set("---")
            Art1LbLbeschrifftung.set("Flächeninhalt=")
            Art2LbLbeschrifftung.set("Umfang=")
            Art3LbLbeschrifftung.set(" ")
            photoLbL["image"]=imgRechteck
        elif Geometrievariable.get()=="Raute": 
            LbLbeschriftung1.set("g")
            LbLbeschriftung2.set("h")
            LbLbeschriftung3.set("e")
            LbLbeschriftung4.set("f")
            LbLbeschriftung5.set("---")
            LbLbeschriftung6.set("---")
            Art1LbLbeschrifftung.set("Flächeninhalt=")
            Art2LbLbeschrifftung.set("Umfang=")
            Art3LbLbeschrifftung.set(" ")
            photoLbL["image"]=imgRaute
        elif Geometrievariable.get()=="Parallelogramm": 
            LbLbeschriftung1.set("g")
            LbLbeschriftung2.set("b")
            LbLbeschriftung3.set("h")
            LbLbeschriftung4.set("---")
            LbLbeschriftung5.set("---")
            LbLbeschriftung6.set("---")
            Art1LbLbeschrifftung.set("Flächeninhalt=")
            Art2LbLbeschrifftung.set("Umfang=")
            Art3LbLbeschrifftung.set(" ")
            photoLbL["image"]=imgParallelogramm
        elif Geometrievariable.get()=="Trapez": 
            LbLbeschriftung1.set("a")
            LbLbeschriftung2.set("c")
            LbLbeschriftung3.set("b")
            LbLbeschriftung4.set("d")
            LbLbeschriftung5.set("m")
            LbLbeschriftung6.set("h")
            Art1LbLbeschrifftung.set("Flächeninhalt=")
            Art2LbLbeschrifftung.set("Umfang=")
            Art3LbLbeschrifftung.set(" ")
            photoLbL["image"]=imgTrapez
        elif Geometrievariable.get()=="Drachenviereck": 
            LbLbeschriftung1.set("a")
            LbLbeschriftung2.set("b")
            LbLbeschriftung3.set("e")
            LbLbeschriftung4.set("f")
            LbLbeschriftung5.set("---")
            LbLbeschriftung6.set("---")
            Art1LbLbeschrifftung.set("Flächeninhalt=")
            Art2LbLbeschrifftung.set("Umfang=")
            Art3LbLbeschrifftung.set(" ")
            photoLbL["image"]=imgDrachenviereck
        elif Geometrievariable.get()=="Kreis": 
            LbLbeschriftung1.set("d")
            LbLbeschriftung2.set("r")
            LbLbeschriftung3.set("---")
            LbLbeschriftung4.set("---")
            LbLbeschriftung5.set("---")
            LbLbeschriftung6.set("---")
            Art1LbLbeschrifftung.set("Flächeninhalt=")
            Art2LbLbeschrifftung.set("Umfang=")
            Art3LbLbeschrifftung.set(" ")
            photoLbL["image"]=imgKreis
        elif Geometrievariable.get()=="Figuren↓↓↓":
            LbLbeschriftung1.set("Die")
            LbLbeschriftung2.set("folgenden")
            LbLbeschriftung3.set("Label")
            LbLbeschriftung4.set("werden")
            LbLbeschriftung5.set("sich")
            LbLbeschriftung6.set("umbenennen.")
            Art1LbLbeschrifftung.set("Flächeninhalt=")
            Art2LbLbeschrifftung.set("Umfang=")
            Art3LbLbeschrifftung.set(" ")
            photoLbL["image"]=imgFormelsammlung

                
        elif Geometrievariable.get()=="Körper↓↓↓":
            LbLbeschriftung1.set("Die")
            LbLbeschriftung2.set("folgenden")
            LbLbeschriftung3.set("Label")
            LbLbeschriftung4.set("werden")
            LbLbeschriftung5.set("sich")
            LbLbeschriftung6.set("umbenennen.")
            Art1LbLbeschrifftung.set("Volumen=")
            Art2LbLbeschrifftung.set("Oberfläche=")
            Art3LbLbeschrifftung.set("Mantelfläche=")
            photoLbL["image"]=imgFormelsammlung
        elif Geometrievariable.get()=="Würfel": 
            LbLbeschriftung1.set("a")
            LbLbeschriftung2.set("---")
            LbLbeschriftung3.set("---")
            LbLbeschriftung4.set("---")
            LbLbeschriftung5.set("---")
            LbLbeschriftung6.set("---")
            Art1LbLbeschrifftung.set("Volumen=")
            Art2LbLbeschrifftung.set("Oberfläche=")
            Art3LbLbeschrifftung.set(" ")
            photoLbL["image"]=imgWürfel
        elif Geometrievariable.get()=="Quader": 
            LbLbeschriftung1.set("a")
            LbLbeschriftung2.set("b")
            LbLbeschriftung3.set("c")
            LbLbeschriftung4.set("---")
            LbLbeschriftung5.set("---")
            LbLbeschriftung6.set("---")
            Art1LbLbeschrifftung.set("Volumen=")
            Art2LbLbeschrifftung.set("Oberfläche=")
            Art3LbLbeschrifftung.set(" ")
            photoLbL["image"]=imgQuader
        elif Geometrievariable.get()=="Zylinder": 
            LbLbeschriftung1.set("d")
            LbLbeschriftung2.set("r")
            LbLbeschriftung3.set("k")
            LbLbeschriftung4.set("G")
            LbLbeschriftung5.set("---")
            LbLbeschriftung6.set("---")
            Art1LbLbeschrifftung.set("Volumen=")
            Art2LbLbeschrifftung.set("Oberfläche=")
            Art3LbLbeschrifftung.set("Mantelfläche=")
            photoLbL["image"]=imgZylinder
        elif Geometrievariable.get()=="(Gerades)Prisma": 
            LbLbeschriftung1.set("k")
            LbLbeschriftung2.set("G")
            LbLbeschriftung3.set("u")
            LbLbeschriftung4.set("---")
            LbLbeschriftung5.set("---")
            LbLbeschriftung6.set("---")
            Art1LbLbeschrifftung.set("Volumen=")
            Art2LbLbeschrifftung.set("Oberfläche=")
            Art3LbLbeschrifftung.set("Mantelfläche=")
            photoLbL["image"]=imgGeradesPrisma
        elif Geometrievariable.get()=="Pyramide": 
            LbLbeschriftung1.set("G")
            LbLbeschriftung2.set("M")
            LbLbeschriftung3.set("k")
            LbLbeschriftung4.set("---")
            LbLbeschriftung5.set("---")
            LbLbeschriftung6.set("---")
            Art1LbLbeschrifftung.set("Volumen=")
            Art2LbLbeschrifftung.set("Oberfläche=")
            Art3LbLbeschrifftung.set(" ")
            photoLbL["image"]=imgPyramide
        elif Geometrievariable.get()=="Kegel": 
            LbLbeschriftung1.set("G")
            LbLbeschriftung2.set("M")
            LbLbeschriftung3.set("r")
            LbLbeschriftung4.set("s")
            LbLbeschriftung5.set("k")
            LbLbeschriftung6.set("---")
            Art1LbLbeschrifftung.set("Volumen=")
            Art2LbLbeschrifftung.set("Oberfläche=")
            Art3LbLbeschrifftung.set("Mantelfläche=")
            photoLbL["image"]=imgKegel
        elif Geometrievariable.get()=="Kugel": 
            LbLbeschriftung1.set("r")
            LbLbeschriftung2.set("d")
            LbLbeschriftung3.set("---")
            LbLbeschriftung4.set("---")
            LbLbeschriftung5.set("---")
            LbLbeschriftung6.set("---")
            Art1LbLbeschrifftung.set("Volumen=")
            Art2LbLbeschrifftung.set("Oberfläche=")
            Art3LbLbeschrifftung.set(" ")
            photoLbL["image"]=imgKugel
        elif Geometrievariable.get()==" ":
            LbLbeschriftung1.set(" ")
            LbLbeschriftung2.set(" ")
            LbLbeschriftung3.set(" ")
            LbLbeschriftung4.set(" ")
            LbLbeschriftung5.set(" ")
            LbLbeschriftung6.set(" ")
            Art1LbLbeschrifftung.set(" ")
            Art2LbLbeschrifftung.set(" ")
            Art3LbLbeschrifftung.set(" ")
            photoLbL["image"]=imgFormelsammlung

    def Rechnen():  
        AErg = "Fehler!"
        UErg = "Fehler!"
        VErg = "Fehler!"
        OErg = "Fehler!"
        MErg = "Fehler!"
        if Geometrievariable.get()=="Dreieck":
            print("Dreieck")
            g = EingabeFeld1.get()
            h = EingabeFeld2.get()
            a = EingabeFeld3.get()
            b = EingabeFeld4.get()
            γ = EingabeFeld5.get()
            if g!= "0" and  h!= "0": 
                AErg=float(g) * float(h)/2 
            elif a!= "0" and b!= "0"  and γ!= "0":
                AErg=(1/2)*float(a)*float(b)* math.sin(math.radians(float(γ)))
            elif a!= "0" and b!= "0"  and g!= "0":
                UErg=float(g)*float(a)*float(b)
            ####
        elif Geometrievariable.get()=="Quadrat":
            print("Quadrat")
            a = EingabeFeld1.get()
            if a!="0":
                AErg=float(a)**2
                UErg=4*float(a)
        ####
        elif Geometrievariable.get()=="Rechteck":
            print("Rechteck")
            a = EingabeFeld1.get()
            b = EingabeFeld2.get()
            if a!= "0" and b!= "0":
                AErg=float(a)*float(b)
                UErg=(2*float(a))+(2*float(b))
        ####            
        elif Geometrievariable.get()=="Raute":
            print("Raute")
            g = EingabeFeld1.get()
            h = EingabeFeld2.get()
            e = EingabeFeld3.get()
            f = EingabeFeld4.get()
            if g!= "0" and h!= "0":
                AErg=float(g) * float(h)
            elif e!= "0" and f!= "0":
                AErg=((float(e)+float(f))/2)
            if g!= "0":
                UErg=4*float(g)
        ####
        elif Geometrievariable.get()=="Parallelogramm":
            print("Parallelogramm")
            g = EingabeFeld1.get()
            b = EingabeFeld2.get()
            h = EingabeFeld3.get()
            if g!= "0" and h!= "0":
                AErg=float(g) * float(h)
            if g!= "0" and b!= "0":
                UErg=(2*float(g))+(2*float(b))
        ####
        elif Geometrievariable.get()=="Trapez":
            print("Trapez")
            a = EingabeFeld1.get()
            c = EingabeFeld2.get()
            b = EingabeFeld3.get()
            d = EingabeFeld4.get()
            m = EingabeFeld5.get()
            h = EingabeFeld6.get()
            if m!= "0" and h!= "0":
                AErg=float(m)*float(h)
            elif a!= "0" and c!= "0" and  h!= "0":
                AErg=((float(a)+float(c))/2)*float(h)
            if a!= "0" and b!= "0" and c!= "0" and  d!= "0":
                UErg=float(a)+float(b)+float(c)+float(d)
        ####
        elif Geometrievariable.get()=="Drachenviereck":
            print("Drachenviereck")
            a = EingabeFeld1.get()
            b = EingabeFeld2.get()
            e = EingabeFeld3.get()
            f = EingabeFeld4.get()
            if e!= "0" and f!= "0":
                AErg=(float(e)*float(f))/2
            if a!= "0" and b!= "0":
                UErg=(2*float(a))+(2*float(b))
        ####   
        elif Geometrievariable.get()=="Kreis":
            print("Kreis")
            d = EingabeFeld1.get()
            r = EingabeFeld2.get()
            π = math.pi
            if r!= "0":
                AErg=2*π*(float(r)**2)
                UErg=2*π*float(r)
            if d!= "0":
                AErg=2*π*float(d)
                UErg=π*float(d)
        ####


            
        if Geometrievariable.get()=="Würfel":
            print("Würfel")
            a = EingabeFeld1.get()
            if a!="0":
                VErg=float(a)**3
                OErg=6*(float(a)**2)
        ####
        elif Geometrievariable.get()=="Quader":
            print("Quader")
            a = EingabeFeld1.get()
            b = EingabeFeld2.get()
            c = EingabeFeld3.get()
            if a!="0" and b!="0" and c!="0":
                VErg=float(a)*float(b)*float(c)
                OErg=2*(float(a)*float(b)+float(b)*float(c)+float(a)*float(c))
        ####    
        elif Geometrievariable.get()=="Zylinder":
            print("Zylinder")
            d = EingabeFeld1.get()
            r = EingabeFeld2.get()
            k = EingabeFeld3.get()
            G = EingabeFeld4.get()
            if G!="0" and k!="0":
                VErg=float(G)*float(k)
            elif r!="0" and k!="0":
                VErg=math.pi*float(r)**2*float(k)
            if r!="0" and k!="0":
                MErg=2*math.pi*float(r)*float(k)
                OErg=2*math.pi*float(r)*(float(r)+float(k))
                MErgebnis.set(MErg)
            elif d!="0" and k!="0":
                MErg=math.pi*float(d)*float(k)
                MErgebnis.set(MErg)
            if G!="0" and MErgebnis.get()!="0":
                OErg=2*float(G)+float(MErgebnis.get())
        ####    
        elif Geometrievariable.get()=="(Gerades)Prisma":
            print("(Gerades)Prisma")
            k = EingabeFeld1.get()
            G = EingabeFeld2.get()
            u = EingabeFeld3.get()
            if G!="0" and k!="0":
                VErg=float(G)*float(k)
            if u!="0" and k!="0":
                MErg=float(u)*float(k)
                MErgebnis.set(MErg)
            if G!="0" and MErgebnis.get()!="0":
                OErg=2*float(G)+float(MErgebnis.get())
        ####
        elif Geometrievariable.get()=="Pyramide":
            print("Pyramide")
            G = EingabeFeld1.get()
            M = EingabeFeld2.get()
            k = EingabeFeld3.get()
            if G!="0" and k!="0":
                VErg=(1/3)*float(G)*float(k)
            if G!="0" and M!="0":
                OErg=float(G)+float(M)
        ####
        elif Geometrievariable.get()=="Kegel":
            print("Kegel")
            G = EingabeFeld1.get()
            M = EingabeFeld2.get()
            r = EingabeFeld3.get()
            s = EingabeFeld4.get()
            k = EingabeFeld5.get()
            if G!="0" and k!="0":
                VErg=(1/3)*float(G)*float(k)
            elif r!="0" and k!="0":
                VErg=(1/3)*math.pi*(float(r)**2)*float(k)
            if r!="0" and s!="0":
                MErg=math.pi*float(r)*float(s)
                OErg=math.pi*float(r)*(float(r)+float(s))
            if G!="0" and M!="0":
                OErg=float(G)+float(M)
        ####   
        elif Geometrievariable.get()=="Kugel":
            print("Kugel")
            r = EingabeFeld1.get()
            d = EingabeFeld2.get()
            if d!="0":
                r=float(d)/2
            if r!="0":
                VErg=(4/3)*math.pi*(float(r)**3)
                OErg=4*math.pi*(float(r)**2)
        ####
        ####
        if Geometrievariable.get()=="Dreieck"or Geometrievariable.get()== "Quadrat"or Geometrievariable.get()== "Rechteck"or Geometrievariable.get()=="Raute"or Geometrievariable.get()=="Parallelogramm"or Geometrievariable.get()=="Trapez"or Geometrievariable.get()=="Drachenviereck"or Geometrievariable.get()=="Kreis":
            AVLbLbeschrifftung.set(AErg)
            UOLbLbeschrifftung.set(UErg)
        elif Geometrievariable.get()=="Würfel"or Geometrievariable.get()=="Quader"or Geometrievariable.get()=="Zylinder"or Geometrievariable.get()=="(Gerades)Prisma"or Geometrievariable.get()=="Pyramide"or Geometrievariable.get()=="Kegel"or Geometrievariable.get()=="Kugel":
            AVLbLbeschrifftung.set(VErg)
            UOLbLbeschrifftung.set(OErg)
        if Geometrievariable.get()=="Zylinder"or Geometrievariable.get()=="(Gerades)Prisma"or Geometrievariable.get()=="Kegel":
            MLbLbeschrifftung.set(MErg)
      

           
            
                

    ####GUI name 
    GUI = tk.Tk()
    GUI.title("Formelsammlung")
    GUI.configure(bg='#84FF84')
    ####Bilder
    imgFormelsammlung = tk.PhotoImage(file = "D:\PythonProjekt\Formelsammung.PNG")
    imgDreieck = tk.PhotoImage(file = "D:\PythonProjekt\Dreieck.PNG")
    imgQuadrat = tk.PhotoImage(file = "D:\PythonProjekt\Quadrat.PNG")
    imgRechteck = tk.PhotoImage(file = "D:\PythonProjekt\Rechteck.PNG")
    imgRaute = tk.PhotoImage(file = "D:\PythonProjekt\Raute.PNG")
    imgParallelogramm = tk.PhotoImage(file = "D:\PythonProjekt\Parallelogramm.PNG")
    imgTrapez = tk.PhotoImage(file = "D:\PythonProjekt\Trapez.PNG")
    imgDrachenviereck = tk.PhotoImage(file = "D:\PythonProjekt\Drachenviereck.PNG")
    imgKreis = tk.PhotoImage(file = "D:\PythonProjekt\Kreis.PNG")
    imgWürfel = tk.PhotoImage(file = "D:\PythonProjekt\Würfel.PNG")
    imgQuader = tk.PhotoImage(file = "D:\PythonProjekt\Quader.PNG")
    imgZylinder = tk.PhotoImage(file = "D:\PythonProjekt\Zylinder.PNG")
    imgGeradesPrisma = tk.PhotoImage(file = "D:\PythonProjekt\(Gerades)Prisma.PNG")
    imgPyramide = tk.PhotoImage(file = "D:\PythonProjekt\Pyramide.PNG")
    imgKegel = tk.PhotoImage(file = "D:\PythonProjekt\Kegel.PNG")
    imgKugel = tk.PhotoImage(file = "D:\PythonProjekt\Kugel.PNG")

    imgFormelsammlung = imgFormelsammlung.subsample(2, 2)
    imgDreieck = imgDreieck.subsample(2, 2)
    imgQuadrat = imgQuadrat.subsample(2, 2)
    imgRechteck = imgRechteck.subsample(2, 2)
    imgRaute = imgRaute.subsample(2, 2)
    imgParallelogramm = imgParallelogramm.subsample(2, 2)
    imgTrapez = imgTrapez.subsample(2, 2)
    imgDrachenviereck = imgDrachenviereck.subsample(2, 2)
    imgKreis = imgKreis.subsample(2, 2)
    imgWürfel = imgWürfel.subsample(2, 2)
    imgQuader = imgQuader.subsample(2, 2)
    imgZylinder = imgZylinder.subsample(2, 2)
    imgGeradesPrisma = imgGeradesPrisma.subsample(2, 2)
    imgPyramide = imgPyramide.subsample(2, 2)
    imgKegel = imgKegel.subsample(2, 2)
    imgKugel = imgKugel.subsample(2, 2)

    ####Variablen
    Geometrievariable = tk.StringVar(GUI)
    LbLbeschriftung1 = tk.StringVar(GUI)
    LbLbeschriftung2 = tk.StringVar(GUI)
    LbLbeschriftung3 = tk.StringVar(GUI)
    LbLbeschriftung4 = tk.StringVar(GUI)
    LbLbeschriftung5 = tk.StringVar(GUI)
    LbLbeschriftung6 = tk.StringVar(GUI)

    UOLbLbeschrifftung = tk.StringVar(GUI)
    AVLbLbeschrifftung = tk.StringVar(GUI)
    MLbLbeschrifftung = tk.StringVar(GUI)
    MErgebnis = tk.StringVar(GUI)
    Art1LbLbeschrifftung = tk.StringVar(GUI)
    Art2LbLbeschrifftung = tk.StringVar(GUI)
    Art3LbLbeschrifftung = tk.StringVar(GUI)

    ####Auswahlfenster
    data=("Figuren↓↓↓", "Dreieck", "Quadrat", "Rechteck","Raute","Parallelogramm","Trapez","Drachenviereck","Kreis"," ","Körper↓↓↓","Würfel","Quader","Zylinder","(Gerades)Prisma","Pyramide","Kegel","Kugel")
    Geometrievariable.set("Figuren↓↓↓")
    Auswahl = tk.OptionMenu(GUI, Geometrievariable, *data, command=test)
    Auswahl.grid(row=1, column=0)
    Auswahl.configure(bg='#84FF84')
    Auswahl["highlightthickness"]=0
    ####Button
    RechnenBTN = tk.Button(GUI, command=Rechnen, text="Rechnen")
    RechnenBTN.grid(row=2, column=0)
    RechnenBTN.configure(bg='#84FF84')
    ####Textbox
    EingabeFeld1  = tk.Entry(GUI)
    EingabeFeld1 .grid(row=2, column=2)

    EingabeFeld2  = tk.Entry(GUI)
    EingabeFeld2 .grid(row=3, column=2)

    EingabeFeld3  = tk.Entry(GUI)
    EingabeFeld3 .grid(row=4, column=2)

    EingabeFeld4  = tk.Entry(GUI)
    EingabeFeld4 .grid(row=5, column=2)

    EingabeFeld5  = tk.Entry(GUI)
    EingabeFeld5 .grid(row=6, column=2)

    EingabeFeld6  = tk.Entry(GUI)
    EingabeFeld6 .grid(row=7, column=2)

    ####Label
    LbLbeschriftung1.set("Die")
    LbLbeschriftung2.set("folgenden")
    LbLbeschriftung3.set("Label")
    LbLbeschriftung4.set("werden")
    LbLbeschriftung5.set("sich")
    LbLbeschriftung6.set("umbenennen.")
    label1 = tk.Label(GUI, textvariable=LbLbeschriftung1,height=1, width=10)
    label1.grid(row=2, column=1)
    label1.configure(bg='#84FF84')

    label2 = tk.Label(GUI, textvariable=LbLbeschriftung2,height=1, width=10)
    label2.grid(row=3, column=1)    
    label2.configure(bg='#84FF84')

    label3 = tk.Label(GUI, textvariable=LbLbeschriftung3,height=1, width=10)
    label3.grid(row=4, column=1)  
    label3.configure(bg='#84FF84')

    label4 = tk.Label(GUI, textvariable=LbLbeschriftung4,height=1, width=10)
    label4.grid(row=5, column=1)  
    label4.configure(bg='#84FF84')

    label5 = tk.Label(GUI, textvariable=LbLbeschriftung5,height=1, width=10)
    label5.grid(row=6, column=1)  
    label5.configure(bg='#84FF84')

    label6 = tk.Label(GUI, textvariable=LbLbeschriftung6,height=1, width=10)
    label6.grid(row=7, column=1)  
    label6.configure(bg='#84FF84')

    label10 = tk.Label(GUI, text="falls sie keinen wert haben setzen sie ein [0] ein",height=1, width=35)
    label10.grid(row=3, column=0)
    label10.configure(bg='#84FF84')
    ####
    label7 = tk.Label(GUI, textvariable=Art1LbLbeschrifftung,height=1, width=14)
    label7.grid(row=8, column=1)
    label7.configure(bg='#84FF84')
    ALbL = tk.Label(GUI, textvariable=AVLbLbeschrifftung,height=1, width=14)
    ALbL.grid(row=8, column=2)
    ALbL.configure(bg='#84FF84')

    label8 = tk.Label(GUI, textvariable=Art2LbLbeschrifftung,height=1, width=14)
    label8.grid(row=9, column=1)
    label8.configure(bg='#84FF84')
    ULbL = tk.Label(GUI, textvariable=UOLbLbeschrifftung,height=1, width=14)
    ULbL.grid(row=9, column=2)
    ULbL.configure(bg='#84FF84')

    label9 = tk.Label(GUI, textvariable=Art3LbLbeschrifftung,height=1, width=14)
    label9.grid(row=10, column=1)
    label9.configure(bg='#84FF84')
    MLbL = tk.Label(GUI, textvariable=MLbLbeschrifftung,height=1, width=14)
    MLbL.grid(row=10, column=2)
    MLbL.configure(bg='#84FF84')
    ####


    photoLbL = tk.Label(GUI, image=imgFormelsammlung)
    photoLbL.grid(row=0, column=2)
    photoLbL.configure(bg='#84FF84')









    tk.mainloop()

except ValueError:
    print("eingabefehler 1")
   

Re: Except funktioniert nicht?

Verfasst: Samstag 11. April 2020, 13:59
von nezzcarth
EddiMiY hat geschrieben: Samstag 11. April 2020, 13:44 vielleicht versteht ja jemand mein programm, ich komme in dem chaos klar also bitte nur wie man den fehler abfangen kann oder wie man ein entry feld auf numbers only umstellt :D
Unter der Bedingung ist es schwierig, dir zu helfen. Das Chaos ist Teil des Problems. Wenn man Try-Except verwendet, versucht man den eingeschlossenen Code-Block so gut es geht zu minimieren; im Idealfall auf eine, oder einige wenige Zeilen. So wie du das machst, über fast den gesamten Code hinweg, ist das extrem unüblich und ein Zeichen für schlecht aufgebauten Code. Daher solltest du dir überlegen, ob nicht doch weitergehende Hilfe annehmen möchtest.

Re: Except funktioniert nicht?

Verfasst: Samstag 11. April 2020, 14:01
von Sirius3
@EddiMiY: was alles an Deinem Code nicht so toll ist, hatte ich Dir ja schon geschrieben. Daher habe ich eigentlich keine Lust, den gleichen Kauderwelsch nochmal anzuschauen.

Der try-Block ist falsch, denn bei der Definition der Funktionen tritt kein Fehler auf, sondern nur bei der Ausführung. Der try-Block sollte so kurz wie möglich sein, also am besten nur eine Zeile mit dem float-Aufruf enthalten. Nach der Fehlerbehandlung sollte die Ausführung auch wieder in einem Zustand sein, mit dem man weiter arbeiten kann.

Re: Except funktioniert nicht?

Verfasst: Samstag 11. April 2020, 15:27
von EddiMiY
Sirius3 hat geschrieben: Samstag 11. April 2020, 14:01 @EddiMiY: was alles an Deinem Code nicht so toll ist, hatte ich Dir ja schon geschrieben. Daher habe ich eigentlich keine Lust, den gleichen Kauderwelsch nochmal anzuschauen.

Der try-Block ist falsch, denn bei der Definition der Funktionen tritt kein Fehler auf, sondern nur bei der Ausführung. Der try-Block sollte so kurz wie möglich sein, also am besten nur eine Zeile mit dem float-Aufruf enthalten. Nach der Fehlerbehandlung sollte die Ausführung auch wieder in einem Zustand sein, mit dem man weiter arbeiten kann.
danke, hat echt geholfen zu wissen das der try block nicht zu lang sein kenn.... jetzt funktioniert es

kuss aufs auge
LG