In article <[EMAIL PROTECTED]>, "Ivan Van Laningham" <[EMAIL PROTECTED]> wrote:
> Hi All-- > I'm having two problems with the scrollbar callback on linux systems > (Fedora 7, Suse 10.1,2 and 3 all exhibit the issues). > > Problem one: on Windows, the callback is called with the arguments as > specified in the doc: "scroll", "1" or "-1", "units". When I run the > identical code on linux, the callback is invoked with only one > argument, "1" or "-1". Here's a small program which demos the > problem: > > ========begin============ > #!/usr/bin/env python > > from Tkinter import * > import sys > > def die(event): > sys.exit(0) > def sDoit(*args): > for i in args: > print "scrollbar:",i, type(i) > root=Tk() > f=Frame(root) > f.pack(expand=1,fill=BOTH) > button=Button(f,width=25) > button["text"]="Quit" > button.bind("<Button>",die) > button.pack() > xb=Scrollbar(f,orient=HORIZONTAL,command=sDoit) > xb.pack() > root.mainloop() > =============end=========== > > On Windows, it produces the correct output > > scrollbar: scroll <type 'str'> > scrollbar: 1 <type 'str'> > scrollbar: units <type 'str'> > > but on linux, it produces > > scrollbar: 1 <type 'str'> I see the same bad thing on our RedHat Enteprise unix system which has the default tcl/tk 8.4.6. However I found that if you send the scrollbar the "set" command first then it behaves normally. I think it just starts out in a funny state where it has no idea how to display itself. -- Russell (P.s. it works fine on my MacOS X 10.4.11 system with default tcl 8.4.7 or with add-on 8.4.14). -- http://mail.python.org/mailman/listinfo/python-list