如何设置BWidget的ScrolledWindow的最大尺寸是多少?(How to set the

2019-10-29 18:16发布

我使用BWidgetScrolledWindow在这样的代码:

toplevel .top
set w [ScrolledWindow .top.scrolledWindow]
set f [ScrollableFrame $w.scrollableFrame -constrainedwidth true]
$w setwidget $f
set a [$f getframe]
# here goes some stuff in $a

所以,我与垂直滚动条的窗口。 当增加的高度.top ,经过一番一刻所有内容$a变为可见,并作为已经不再需要它的滚动条消失。 我怎样才能进一步提高禁止的高度.top ? 即我需要的最大高度设置.top的值时,$ A的所有内容是可见的。 我怎样才能做到这一点 ?

Answer 1:

要设置一个顶层的最大高度,您使用wm maxsize ,可能与水平尺寸非常大的值。 为了得到它的电流的大小,使用winfo height (和winfo width的其他尺寸)。 这些组合:

# 10k is just a "big" number
wm maxsize .top 10000 [winfo height .top]

现在,随着BWidget棘手的一点是,它不会立即设置窗口的大小,甚至在第一显示器上。 这意味着,你必须把在何时配置窗口的猜测。 尝试便宜的事情是把它半秒的未来; 毕竟,即使是专家级用户都有可能,而与它交互前看至少要花费一点点。 这是与完成after是这样的:

# 500 milliseconds in the future
after 500 {
    # 10k is just a "big" number
    wm maxsize .top 10000 [winfo height .top]
}


文章来源: How to set the maximum size of BWidget's ScrolledWindow?