--- trunk/RCS/lohnrechner.py 2005/01/13 11:39:49 12 +++ trunk/RCS/lohnrechner.py 2005/01/13 13:01:58 16 @@ -51,9 +51,18 @@ stklradio.pack(side=LEFT) Label(root, text="Kirchensteuer (%):").grid(row=2, sticky=E) - self.kirche = Entry(root) - self.kirche.bind("", self.NewInput) - self.kirche.grid(row=2, column=1, sticky=W) + self.kirche = StringVar() + kircheframe = Frame(root) + kircheframe.grid(row=2, column=1, sticky=W) + for text, val in [("keine", "0"), + ("8 %", "8"), + ("9 %", "9")]: + kircheradio = Radiobutton(kircheframe, text=text, value=val, + indicatoron=0, command=self.CalcOutput, + variable=self.kirche) + if val == "0": + kircheradio.select() + kircheradio.pack(side=LEFT) self.ResetInput() @@ -66,8 +75,8 @@ self.soli.grid(row=1, column=3, sticky=W) Label(root, text="Kirchensteuer:").grid(row=2, column=2, sticky=E) - self.kirchest = Entry(root) - self.kirchest.grid(row=2, column=3, sticky=W) + self.kist = Entry(root) + self.kist.grid(row=2, column=3, sticky=W) self.calcbutton = Button(root, text="Berechnen", command=self.CalcOutput) self.calcbutton.grid(row=3, columnspan=4) @@ -79,28 +88,19 @@ def ResetInput(self): self.ResetInputLohn() - self.ResetInputKirche() def ResetInputLohn(self): self.lohn.delete(0, END) self.lohn.insert(0, "0") - def ResetInputKirche(self): - self.kirche.delete(0, END) - self.kirche.insert(0, "0") - def InitCalc(self): try: self.SetLohn(float(self.lohn.get())) except: self.ResetInputLohn() - try: - self.SetKirchensteuer(float(self.kirche.get())) - except: - self.ResetInputKirche() - self.SetSteuerklasse(int(self.stkl.get())) + self.SetKirchensteuer(int(self.kirche.get())) def CalcOutput(self): self.InitCalc() @@ -109,8 +109,8 @@ self.lst.insert(0, "%.2f" % self.GetLohnsteuer()) self.soli.delete(0, END) self.soli.insert(0, "%.2f" % self.GetSoli()) - self.kirchest.delete(0, END) - self.kirchest.insert(0, "%.2f" % self.GetKirchensteuer()) + self.kist.delete(0, END) + self.kist.insert(0, "%.2f" % self.GetKirchensteuer()) if __name__ == "__main__":