hi,
ich will mir ein countdownprogramm erstellen, das ähnlich diesm hier ist:
http://paste.pocoo.org/show/22108/
nur ich will es etwas verändern. allerdings kenn ich mich mit python noch nicht soo gut aus und deshalb brauch ich euch profis
und zwar will ich ersteinmal die eingabe in minuten haben und die ausgabe
soll nicht mehr sekunden/millisekunden sondern minuten/sekunden sein.
zudem hätte ich gerne neben den start buttons jeweils eine leere zeile wo man einfach was reinschreiben kann.
wäre echt sehr geil wenn ihr mir helfen könntet
EDIT by Gerold: Code ausgelagert:
http://paste.pocoo.org/show/24172/
countdown **brauche hilfe bitte ganz unten gucken**
- gerold
- Python-Forum Veteran
- Beiträge: 5555
- Registriert: Samstag 28. Februar 2004, 22:04
- Wohnort: Oberhofen im Inntal (Tirol)
- Kontaktdaten:
Hallo SonGuko!SonGuko hat geschrieben:und zwar will ich ersteinmal die eingabe in minuten haben und die ausgabe soll nicht mehr sekunden/millisekunden sondern minuten/sekunden sein.
zudem hätte ich gerne neben den start buttons jeweils eine leere zeile wo man einfach was reinschreiben kann.
Der erste Wunsch ist kein Problem. Ändere Zeile 73 so um:
Code: Alles auswählen
diff_seconds = int(self.txt_startvalue.GetValue()) * 60
Zeile 60:
Code: Alles auswählen
new_value = "%6i min. %6i sec." % (diff.seconds // 60, diff.seconds % 60)
Code: Alles auswählen
new_value = "%6i Sekunden %02i" % (0, 0)
mfg
Gerold
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
- gerold
- Python-Forum Veteran
- Beiträge: 5555
- Registriert: Samstag 28. Februar 2004, 22:04
- Wohnort: Oberhofen im Inntal (Tirol)
- Kontaktdaten:
Hallo SonGuko!
Zeile 50; einfügen:
mfg
Gerold
PS: Ich fasse mal zusammen: http://paste.pocoo.org/show/22824/
Zeile 50; einfügen:
Code: Alles auswählen
self.txt_note = wx.TextCtrl(self, size = (150, -1))
hbox.Add(self.txt_note, 0, wx.ALL | wx.ALIGN_CENTER_VERTICAL, 6)
Gerold
PS: Ich fasse mal zusammen: http://paste.pocoo.org/show/22824/
Zuletzt geändert von gerold am Montag 21. Januar 2008, 22:43, insgesamt 1-mal geändert.
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
hat alles wunderbar geklappt
wäre super nett von euch, wenn ihr mir sagen könntet, wie ich es verhindern kann, dass der countdown von vorn anfängt wenn man nach einem stop den countdown wieder startet. (am besten der aktuelle countdownstand geht in das textfeld bei der eingabe - ich hoffe ihr ihr versteht es)
dann bräuchte ich noch einen extra knopf, der alle countdowns anhält und auch wieder startet. ( am oben rechts in der ecke)
wenn ihr das hinkriegen würdet, dann würd ich eure füße küssen (methaphorisch )
wäre super nett von euch, wenn ihr mir sagen könntet, wie ich es verhindern kann, dass der countdown von vorn anfängt wenn man nach einem stop den countdown wieder startet. (am besten der aktuelle countdownstand geht in das textfeld bei der eingabe - ich hoffe ihr ihr versteht es)
dann bräuchte ich noch einen extra knopf, der alle countdowns anhält und auch wieder startet. ( am oben rechts in der ecke)
wenn ihr das hinkriegen würdet, dann würd ich eure füße küssen (methaphorisch )
Oder aber du setzt dich mal hin und versuchst mal den Code zu verstehen, dann kannste das eigentlich auch selbst machen, vlt nicht ohne Hilfe aber immerhin eigenständig.Das der Countdown nicht wieder von vorne anfängt kannste mit nem Counter und ner if- Abfrage denk ich mal hinkriegen.
MfG skypa
MfG skypa
blöd nur, dass der schreiber des codes seine methoden nicht spezifiziert hat.
ich hab mir ja mal die beiden methoden zu brust genommen:
aber irgendwie werd ich nicht schlau draus
ich wollts so machen:
wenn stop gedrückt -> hält countdown an und ändert das textfeld in "keine veränderung" um. wenn mann wieder auf start drückt und "keine veränderung" im textfeld steht, dann soll er einfach weiter machen. wenn aber eine zahl drin steht, dann soll er einen neuen countdown starten.
aber leichter gesagt als getan. wenn ich an der new_value oder an diff_secounds rumfusche, zaubert er mir ein neues textfeld -.-
ich hab mir ja mal die beiden methoden zu brust genommen:
Code: Alles auswählen
def on_timer(self, event):
now = datetime.datetime.now()
if now < self.end_datetime:
diff = self.end_datetime - now
new_value = "%6i Minuten %6i sec." % (diff.seconds // 60, diff.seconds % 60)
else:
new_value = "%6i Minuten %02i" % (0, 0)
self.timer.Stop()
self.musik_abspielen()
self.txt_startvalue.Enable()
self.btn_start_stop.SetLabel("Start")
self.anzeige.SetLabel(new_value)
wx.YieldIfNeeded()
def start_stop_countdown(self, event):
if self.btn_start_stop.GetLabel() == "Start":
diff_seconds = int(self.txt_startvalue.GetValue()) * 60
now = datetime.datetime.now()
self.end_datetime = now + datetime.timedelta(seconds = diff_seconds)
self.timer.Start(100)
self.txt_startvalue.Disable()
self.btn_start_stop.SetLabel("Stop")
else:
self.timer.Stop()
self.txt_startvalue.Enable()
self.btn_start_stop.SetLabel("Start")
ich wollts so machen:
wenn stop gedrückt -> hält countdown an und ändert das textfeld in "keine veränderung" um. wenn mann wieder auf start drückt und "keine veränderung" im textfeld steht, dann soll er einfach weiter machen. wenn aber eine zahl drin steht, dann soll er einen neuen countdown starten.
aber leichter gesagt als getan. wenn ich an der new_value oder an diff_secounds rumfusche, zaubert er mir ein neues textfeld -.-
ok ich habs jetzt endlich nach stundenlangen rumprobierens xD
es war nicht so leicht wie ichs mir gedacht habe, aber jetzt funzt es. zwar nicht besonders schön aber immerhin klappts.
vielen dank dass ihr mir nicht weiter geholfen habt, denn jetzt habe ich das programm verstanden und was dazugelernt
es war nicht so leicht wie ichs mir gedacht habe, aber jetzt funzt es. zwar nicht besonders schön aber immerhin klappts.
vielen dank dass ihr mir nicht weiter geholfen habt, denn jetzt habe ich das programm verstanden und was dazugelernt
hallo,
also folgendes problem:
ich brauche eine möglichkeit alle countdowns gleichzeitig anzuhalten, sprich die methode start_stop_countdown für alle countdowns zu aktivieren.
ich bin mit meinem latein am ende. :K
hier mal der neue code:
EDIT by Gerold: Code ausgelagert
http://paste.pocoo.org/show/24171/
wäre voll nett wenn ihr mir helfen könntet
also folgendes problem:
ich brauche eine möglichkeit alle countdowns gleichzeitig anzuhalten, sprich die methode start_stop_countdown für alle countdowns zu aktivieren.
ich bin mit meinem latein am ende. :K
hier mal der neue code:
EDIT by Gerold: Code ausgelagert
http://paste.pocoo.org/show/24171/
wäre voll nett wenn ihr mir helfen könntet
- gerold
- Python-Forum Veteran
- Beiträge: 5555
- Registriert: Samstag 28. Februar 2004, 22:04
- Wohnort: Oberhofen im Inntal (Tirol)
- Kontaktdaten:
Hallo SonGuko!
Das hat nichts mehr mit einer schnell beantwortbaren Frage zu tun.
Zwischenstand: http://paste.pocoo.org/show/24170/
Ich werde mich noch ein paar Minuten daran austoben und den überarbeiteten Code hier posten.
EDIT:
Mit "Allgemeinem Countdown-Stopp":
http://paste.pocoo.org/show/24175/
mfg
Gerold
Das hat nichts mehr mit einer schnell beantwortbaren Frage zu tun.
Zwischenstand: http://paste.pocoo.org/show/24170/
Ich werde mich noch ein paar Minuten daran austoben und den überarbeiteten Code hier posten.
EDIT:
Mit "Allgemeinem Countdown-Stopp":
http://paste.pocoo.org/show/24175/
mfg
Gerold
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.