站长网 Unix flex tree自动显示横向滚动条实现代码

flex tree自动显示横向滚动条实现代码

package com.anydata.consumer.components { import flash.events.Event; import mx.controls.Tree; import mx.core.ScrollPolicy; import mx.core.mx_internal; /** * 自动显示横向滚动条 */ public class AutoSizeTree extends Tree { public function A


package com.anydata.consumer.components
{
import flash.events.Event;
import mx.controls.Tree;
import mx.core.ScrollPolicy;
import mx.core.mx_internal;

/**
* 自动显示横向滚动条
*/
public class AutoSizeTree extends Tree
{
public function AutoSizeTree()
{
super();
horizontalScrollPolicy=ScrollPolicy.AUTO;
}

override public function get maxHorizontalScrollPosition():Number
{
if (isNaN(mx_internal::_maxHorizontalScrollPosition))
return 0;
return mx_internal::_maxHorizontalScrollPosition;
}

override public function set maxHorizontalScrollPosition(value:Number):void
{
mx_internal::_maxHorizontalScrollPosition=value;
dispatchEvent(new Event(“maxHorizontalScrollPositionChanged”));
scrollAreaChanged=true;
invalidateDisplayList();
}

override protected function updateDisplayList(unscaledWidth:Number, unscaledHeight:Number):void
{
var diffWidth:Number=measureWidthOfItems(0, 0) – (unscaledWidth – viewMetrics.left – viewMetrics.right);

var indentation:Number=getStyle(“indentation”);

if (diffWidth <= 0)
maxHorizontalScrollPosition=NaN;
else
maxHorizontalScrollPosition=diffWidth + indentation;
super.updateDisplayList(unscaledWidth, unscaledHeight);
}
}
}

本文来自网络,不代表站长网立场,转载请注明出处:https://www.tzzz.com.cn/html/server/unix/2021/0523/4436.html

作者: dawei

【声明】:站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。
联系我们

联系我们

0577-28828765

在线咨询: QQ交谈

邮箱: xwei067@foxmail.com

工作时间:周一至周五,9:00-17:30,节假日休息

返回顶部