首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >灵活调整画布大小,把这样的代码放在哪里?(图内)

灵活调整画布大小,把这样的代码放在哪里?(图内)
EN

Stack Overflow用户
提问于 2009-05-21 13:14:26
回答 2查看 2.5K关注 0票数 0

我有两个画布A和B,A是B的子项。A可以通过一些用户操作来调整大小,比如向其基础添加一些UI组件。A被另一个父画布B所包围,如果它的孩子A太大,它应该会显示出责骂手柄。

我希望A的宽度和高度与B相同(或非常接近),而A的计算宽度和高度小于B的宽度和高度。

如果A的w或h大于B,则A应该生长,B会显示滚动。我希望这是明确的。

我的问题是我能在哪里,怎么做这样的逻辑?

画布图http://www.picimg.com/uploads/18cd2277adde7d50da2bc708075f4fac.png

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2009-05-21 13:31:17

画布继承的UIComponent类具有一个minHeight和一个minWidth属性。您可以将A的最小尺寸/宽度绑定到B的宽度和高度,因此每当调整B的大小时,A的最小尺寸也会发生变化。也支持绑定到表达式(参见下面的示例)。当A变得太大而不能同时显示时,B将自动显示滚动条,您只需要提供一个固定的高度和宽度(或其他一些大小约束)。A还会在添加子级后自动调整大小。

代码语言:javascript
复制
<mx:Canvas id="B" width="..." height="...">
    <mx:Canvas id="A" minHeight="{B.height-20}" minWidth="{B.width-20}">
        <!-- your content widgets -->
    </mx:Canvas>
</mx:Canvas>
票数 1
EN

Stack Overflow用户

发布于 2009-05-21 13:27:28

您只需将B上的滚动策略设置为auto。这样,如果A太大,B就会有滚动条。这应该在MXML中完成。

代码语言:javascript
复制
<mx:Canvas name="B" width=100 height=100 scrollPolicy="auto">
    <mx:Canvas name="A" width=90 height=90>
        ...
    </mx:Canvas>
</mx:Canvas>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/892870

复制
相关文章

相似问题

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