Timerscript mit dialog

Stellt hier eure Projekte vor.
Internetseiten, Skripte, und alles andere bzgl. Python.
Antworten
bennym
User
Beiträge: 36
Registriert: Freitag 13. Oktober 2006, 21:17
Kontaktdaten:

Sonntag 18. März 2007, 20:05

Hallo!

Ich habe eine Timerscript geschrieben.


Ich freu mich über jede Menge Kritik und Tipps!

mfg benny

Code: Alles auswählen

#!/usr/bin/python
#-*-coding=utf-8-*-

version = "0.5"


import dialog, os, time



d = dialog.Dialog(dialog="dialog")


#Introbox
def introbox():

	d.infobox(	"Scheduler - version " + version +
				"\n\n by benny:"
				"\n\n\nreleased under the GPL")

	time.sleep(0.5)




#Hauptmenu
def mainmenu():
	(code,tag) = d.menu(
		"Was soll getan werden?",
		width=60,
		choices=[	("Einen neuen Event erstellen","")])


#Newevent oder nicht?
	if tag == "Einen neuen Event erstellen":
		newevent()


#Welche Anwendung soll ausgeführt werden
def newevent():
		(code, answer) = d.inputbox(
						"Geben Sie den Befehl ein:")

		tasklist = []
		tasklist.append(answer)
		
		command = ' '.join(tasklist)

	

		(code, seconds) = d.inputbox(
						"In wievielen Minuten?")

		
		
		#Sekunden werden in Minuten umgerechnet
		minutes = int(seconds) * 60
		#print minutes

		list = []
		list.append(minutes)

		while True:
			#print list
			x = (int(str(list[0])))	
	

#Sekunden oder Minuten oder Stunden im Infotext?
# Anmerkung: Aktualisierungspeed: Sekunden > Minuten > Stunden


			if x < 240:
				text = "Noch " + str(x) + " Sekunden \nverbleibend"
				#print "erster Abschnitt", str(x/60)
				#break
				time.sleep(1)

			elif 14400 > x > 240:
				text = "Noch " + str(x/60) + " Minuten \nverbleibend"
				#print "zweiter Abschnitt", str(x)
				#break
				time.sleep(1)

			else:
				text = "Noch " + str(x/60/60) + " Stunden \nverbleibend"
				#print "dritter Abschnitt", str(x/60/60)
				#break
				time.sleep(1)



			d.infobox(text)

			list[0] = str(int(list[0]) - 1)
	
			if "-1" in list:
				os.system(command)
				start()
			


#STAAAAARTTT
def start():
	introbox()
	mainmenu()

start()


Nirven
User
Beiträge: 130
Registriert: Mittwoch 10. Mai 2006, 08:18
Wohnort: Bremerhaven

Sonntag 18. März 2007, 21:32

Hm, woher kommt das Modul Dialog?
Benutzeravatar
Michael Schneider
User
Beiträge: 567
Registriert: Samstag 8. April 2006, 12:31
Wohnort: Bremen
Kontaktdaten:

Dienstag 20. März 2007, 09:23

Moin!

Keine Ahnung, aber es macht ne ganze Menge. ^^

@Benny, gibt es einen speziellen Grund, warum Dein halbes Script aus Leerzeilen besteht? Es wirkt so ein wenig unübersichtlich, wenn man "unnötig" viel scrollen muss.

Grüße,
Michael
Diese Nachricht zersört sich in 5 Sekunden selbst ...
bennym
User
Beiträge: 36
Registriert: Freitag 13. Oktober 2006, 21:17
Kontaktdaten:

Dienstag 20. März 2007, 21:52

Hallo!

Dialog ist ein Text user interface. Also ne Gui für die Console. Es basiert glaub auf curses, ist aber wesentlich einfacher zu programieren.

Bekommen tut mans mit apt-get install python-dialog unter ubuntu und debian.

@Michale Schneider
Die vielen Lehrzeilen? Ja, geb zu das es etwas unübersichtlich ist.... Gibt keinen bestimmten Grund warums so viele gibt :P

mfg benny

edit:
Die HP von dialog ist:
http://hightek.org/dialog/
Y0Gi
User
Beiträge: 1454
Registriert: Freitag 22. September 2006, 23:05
Wohnort: ja

Mittwoch 21. März 2007, 11:35

bennym hat geschrieben:@Michale Schneider
Die vielen Lehrzeilen?
Freudsche Ironie? ;)
Antworten