首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何设置BWidget的ScrolledWindow的最大大小?

如何设置BWidget的ScrolledWindow的最大大小?
EN

Stack Overflow用户
提问于 2010-12-26 06:38:33
回答 1查看 427关注 0票数 0

我在下面这样的代码中使用了BWidgetScrolledWindow

代码语言:javascript
复制
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的所有内容都可见时的值。我该怎么做呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-12-26 19:12:11

要设置顶层的最大高度,可以使用wm maxsize,水平大小可能具有非常大的值。要获得它的当前大小,可以使用winfo height (在另一个维度中使用winfo width )。将这些组合在一起:

代码语言:javascript
复制
# 10k is just a "big" number
wm maxsize .top 10000 [winfo height .top]

现在,BWidget的棘手之处在于它不会立即设置窗口的大小,甚至不会在第一次显示时设置窗口的大小。这意味着您必须猜测何时配置窗口。一件便宜的事情是把它放在未来的半秒内;毕竟,即使是专家用户也可能在与它交互之前至少花一点时间看一看。对after的操作如下所示:

代码语言:javascript
复制
# 500 milliseconds in the future
after 500 {
    # 10k is just a "big" number
    wm maxsize .top 10000 [winfo height .top]
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4531956

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档