Hmmm... That is a bad news.
Well, what message do you get from the following on 1.8.4?
···
From: Chris Alfeld <calfeld@math.utah.edu>
Subject: Re: Tk horizontal scrollbar infinite loop
Date: Sun, 26 Feb 2006 00:48:22 +0900
---------------------------------------------------
require 'tk'
r = Tk.root
f = TkFrame.new
sb = TkScrollbar.new(f, :orient=>:horizontal)
p ['a',
[[r.winfo_reqwidth,r.winfo_reqheight],
[r.winfo_width,r.winfo_height]],
[[f.winfo_reqwidth,f.winfo_reqheight],
[f.winfo_width,f.winfo_height]],
[[sb.winfo_reqwidth,sb.winfo_reqheight],
[sb.winfo_width,sb.winfo_height]]
]
sb.pack(:side=>:bottom, :fill=>:x)
p ['b',
[[r.winfo_reqwidth,r.winfo_reqheight],
[r.winfo_width,r.winfo_height]],
[[f.winfo_reqwidth,f.winfo_reqheight],
[f.winfo_width,f.winfo_height]],
[[sb.winfo_reqwidth,sb.winfo_reqheight],
[sb.winfo_width,sb.winfo_height]]
]
Tk.update
p ['c',
[[r.winfo_reqwidth,r.winfo_reqheight],
[r.winfo_width,r.winfo_height]],
[[f.winfo_reqwidth,f.winfo_reqheight],
[f.winfo_width,f.winfo_height]],
[[sb.winfo_reqwidth,sb.winfo_reqheight],
[sb.winfo_width,sb.winfo_height]]
]
f.pack(:side=>:bottom, :fill=>:x)
p ['d',
[[r.winfo_reqwidth,r.winfo_reqheight],
[r.winfo_width,r.winfo_height]],
[[f.winfo_reqwidth,f.winfo_reqheight],
[f.winfo_width,f.winfo_height]],
[[sb.winfo_reqwidth,sb.winfo_reqheight],
[sb.winfo_width,sb.winfo_height]]
]
Tk.update
p ['e',
[[r.winfo_reqwidth,r.winfo_reqheight],
[r.winfo_width,r.winfo_height]],
[[f.winfo_reqwidth,f.winfo_reqheight],
[f.winfo_width,f.winfo_height]],
[[sb.winfo_reqwidth,sb.winfo_reqheight],
[sb.winfo_width,sb.winfo_height]]
]
Tk.after(1000){
p ['f',
[[r.winfo_reqwidth,r.winfo_reqheight],
[r.winfo_width,r.winfo_height]],
[[f.winfo_reqwidth,f.winfo_reqheight],
[f.winfo_width,f.winfo_height]],
[[sb.winfo_reqwidth,sb.winfo_reqheight],
[sb.winfo_width,sb.winfo_height]]
]
}
Tk.mainloop
---------------------------------------------------
My Linux box returns
------------------------------------------------------------------------
["a", [[200, 200], [1, 1]], [[1, 1], [1, 1]], [[2, 21], [1, 1]]]
["b", [[200, 200], [1, 1]], [[1, 1], [1, 1]], [[2, 21], [1, 1]]]
["c", [[200, 200], [200, 200]], [[2, 21], [1, 1]], [[2, 21], [1, 1]]]
["d", [[200, 200], [200, 200]], [[2, 21], [1, 1]], [[2, 21], [1, 1]]]
["e", [[42, 21], [42, 21]], [[42, 21], [42, 21]], [[42, 21], [42, 21]]]
["f", [[42, 21], [42, 21]], [[42, 21], [42, 21]], [[42, 21], [42, 21]]]
------------------------------------------------------------------------
When sb.pack(:side=>:bottom, :fill=>:x, :pady=>1), returns
------------------------------------------------------------------------
["a", [[200, 200], [1, 1]], [[1, 1], [1, 1]], [[2, 21], [1, 1]]]
["b", [[200, 200], [1, 1]], [[1, 1], [1, 1]], [[2, 21], [1, 1]]]
["c", [[200, 200], [200, 200]], [[2, 23], [1, 1]], [[2, 21], [1, 1]]]
["d", [[200, 200], [200, 200]], [[2, 23], [1, 1]], [[2, 21], [1, 1]]]
["e", [[42, 23], [42, 23]], [[42, 23], [42, 23]], [[42, 21], [42, 21]]]
["f", [[42, 23], [42, 23]], [[42, 23], [42, 23]], [[42, 21], [42, 21]]]
------------------------------------------------------------------------
--
Hidetoshi NAGAI (nagai@ai.kyutech.ac.jp)