Reaktionstest

Stellt hier eure Projekte vor.
Internetseiten, Skripte, und alles andere bzgl. Python.
Antworten
Pycon
User
Beiträge: 2
Registriert: Montag 17. März 2003, 17:51

Mittwoch 19. März 2003, 20:38

Hallo,
ich hab mit Tkinter einen kleinen Reaktionstest geschrieben.
Habt ihr Ideen zum Verbessern, Erweitern, Ändern usw.?
Hier ist der Code:

Code: Alles auswählen

from Tkinter import*
from random import*
from time import*
from thread import*

class tag:
    def __init__(self,canvas,label):
        self.canvas=canvas
        self.label=label
        self.coord=randint(1,250)
        self.rechteck=self.canvas.create_rectangle(self.coord,self.coord,\
                                          self.coord+20,self.coord+20,fill='red')
        self.zeit1=time()
    def bind(self):
        self.canvas.tag_bind(self.rechteck,'<Button-1>',self.reg)
    def reg(self,e):
        self.zeit2=time()
        self.canvas.tag_bind(self.rechteck,'<Button-1>',self.nothing)
        self.zeit3=self.zeit2-self.zeit1
        self.label.config(text='Zeit: %.4f Sekunden'%self.zeit3)
    def nothing(self,e):
        pass
def run(canvas,label):
    sek=0
    liste=[1,0,0,0,0,1]
    while 1:
        label.config(text='Sekunden: %i'%sek)
        z=choice(liste)
        if z==1:
            instanz=tag(canvas,label)
            instanz.bind()
            break
        sleep(1.0)
        sek=sek+1
root=Tk()
root.title('Reaktionstest')

canvas=Canvas(root,width=250,height=250,bg='white')
canvas.pack()
label=Label(root,text='',relief=SUNKEN,bg='white',width=25)
label.pack(padx=5,pady=5)
ende=Button(root,text='ENDE',command=root.destroy)
ende.pack()

start_new_thread(run,(canvas,label))
root.mainloop()
Danke schon mal im Voraus,

Feliks
Pythonaya
User
Beiträge: 90
Registriert: Sonntag 26. Januar 2003, 11:34
Wohnort: Großbeeren (nahe Berlin)

Freitag 16. Mai 2003, 19:55

Hi F.!
Dein Prog. ist zwar ganz gut, aber wie wärs, wenn du noch ein bischen Sound und Grafik reinbringst?!?
Irgendwie ist er noch ein wenig zu trocken auf den ersten Blick.
Naja, bis Montag in der Schule...

MFG,
Flo
Antworten