I am working on making something called a PopMsg widget which is actually identical to a Balloon widget from Pmw. Here is the code:
---code--- from Tkinter import * import time class PopMsg: def showmsg(self, event): for a in range(10000000): pass self.t.deiconify() self.t.geometry(str(self.msg.winfo_reqwidth())+'x'+str(self.msg.winfo_reqheight())+'+'+str(event.x_root)+'+'+str(event.y_root)) self.widget.bind('<Leave>', self.hide) time.sleep(0.001) def hide(self, event): self.t.withdraw() def __init__(self, parent, widget, text=None): self.parent=parent self.widget=widget self.text=text self.t = Toplevel() self.t.withdraw() self.t.overrideredirect(1) self.msg = Message(self.t , text=self.text , bg='white' , border=1 , relief=SOLID , aspect=250) self.msg.pack(ipadx=10, ipady=5) self.parent.unbind('<Enter>') self.parent.focus() self.widget.bind('<Enter>', self.showmsg) def printhello(): print 'Hello' root = Tk() button = Button(root, text='Hello !', command=printhello) button.pack(padx=10, pady=10) p = PopMsg(root, button, text='Some messaging text can go here.') root.mainloop() ---End Code--- My problem you'll notice is that I tried to put something of a 'delay' that will allow the popup to show a few seconds after the cursor has entered the targeted widget's space (in this case the button). That works ok but I've found that while waiting I can't activate (or 'click') on the button until the PopMsg has shown up. Is there anything I can do to solve this problem? thanks, Harlin Seritt -- http://mail.python.org/mailman/listinfo/python-list