Frage zu SpinCtrl
Verfasst: Donnerstag 24. November 2011, 08:57
Hallo
Habe folgendes Demoprogramm modifiziert
[url][http://wiki.wxpython.org/AnotherTutoria ... inCtrl/url] spinctrl.py
hier meine Modifikation
Das Programm gibt mir immer nur den Wert der Eingabe von startkapital (sk) zurück, wo liegt der Fehler
Habe folgendes Demoprogramm modifiziert
[url][http://wiki.wxpython.org/AnotherTutoria ... inCtrl/url] spinctrl.py
hier meine Modifikation
Code: Alles auswählen
#!/usr/bin/python
# -*- coding: utf-8 -*-
# spinctrl.py
import wx
class MyDialog(wx.Dialog):
def __init__(self, parent, id, title):
wx.Dialog.__init__(self, parent, id, title, wx.DefaultPosition, wx.Size(350, 310))
wx.StaticText(self, -1, 'Zinseszins - Endkapitalberechnung ', (20,20))
wx.StaticText(self, -1, 'Anfangskapital: ', (20, 80))
wx.StaticText(self, -1, 'Laufzeit: ', (20, 100))
wx.StaticText(self, -1, 'Zinssatz: ', (20, 125))
wx.StaticText(self, -1, 'Zinszahlungen: ', (20, 150))
wx.StaticText(self, -1, 'Endkapital: ', (20, 225))
self.SetBackgroundColour('Orange')
self.endkapital = wx.StaticText(self, -1, '', (225, 225))
self.sk = wx.SpinCtrl(self, -1, '', (150, 75), (60, -1))
self.sk.SetRange(-459, 1000)
self.sk.SetValue(0)
self.lz = wx.SpinCtrl(self, -1, '', (150, 100), (60, -1))
self.lz.SetRange(0, 50)
self.lz.SetValue(0)
self.zs = wx.SpinCtrl(self, -1, '', (150, 125), (60, -1))
self.zs.SetRange(0, 20)
self.zs.SetValue(0)
self.zz = wx.SpinCtrl(self, -1, '', (150, 150), (60, -1))
self.zz.SetRange(0, 20)
self.zz.SetValue(0)
compute_btn = wx.Button(self, 1, 'Berechnen', (70, 250))
compute_btn.SetFocus()
clear_btn = wx.Button(self, 2, 'Beenden', (185, 250))
self.Bind(wx.EVT_BUTTON, self.OnCompute, id=1)
self.Bind(wx.EVT_BUTTON, self.OnClose, id=2)
self.Bind(wx.EVT_CLOSE, self.OnClose)
def OnCompute(self, event):
startkapital = self.sk.GetValue()
laufzeit = self.lz.GetValue()
zinssatz = self.zs.GetValue()
zinszahlungen = self.zz.GetValue()
cels = startkapital * (1 + zinssatz/(100*zinszahlungen))**(laufzeit*zinszahlungen)
self.endkapital.SetLabel(str(cels))
def OnClose(self, event):
self.Destroy()
class MyApp(wx.App):
def OnInit(self):
dlg = MyDialog(None, -1, 'Zinseszins.py')
dlg.Show(True)
dlg.Centre()
return True
app = MyApp(0)
app.MainLoop()