hi everyone....... i am writing a program where i have 2 ovals and i want my first oval to appear then after 2 seconds the second one...but am failing in doing this.
can anyone help me to do this please. thank you in advance
here is my code

from Tkinter import *
import Tkinter
import time
import thread

frame=Tkinter.Frame()
frame.pack()



canvas =Tkinter.Canvas(frame,bg = 'white',width=500, height=500)
canvas.pack()

def generate():
        
            canvas.create_oval(200,300,210,310) #my first oval
            time.sleep(2)
            canvas.create_oval(200,300,210,310) # my second oval
            
        
                


        
        
        

    
button=Tkinter.Button(frame,fg="blue", text="GENERATE", command=generate).pack()


mainloop()

the problem that i'm having with this is that the computer is waiting for 2 sec then displays both oval but me i want 1 at a time.....

someone please help me in doing this

Please use the proper code tags around your code. Don't quote the whole thing or your code tags won't work.

Proper code tags are
[code=python]
your code here

[/code]

Please format your code so it is somewhat readable. Also, since your ovals are equal, how would you know the difference?

This how you might do it:

import Tkinter as tk

def generate():
    oval1()
    frame.after(2000, oval2)

def oval1():
    canvas.create_oval(200, 300, 210, 310, fill='red')

def oval2():
    canvas.create_oval(200, 300, 210, 310, fill='blue')

frame = tk.Frame()
frame.pack()

canvas = tk.Canvas(frame, bg='white', width=500, height=500)
canvas.pack()
            
button = tk.Button(frame, fg="blue", text="GENERATE", command=generate)
button.pack()

frame.mainloop()

hi.... its very nice what u've given but i want to use the time.sleep() function as later on i will have to add more oval.can you please tell me. thnx..

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.