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

软件发布|下载排行|最新软件

当前位置:首页IT学院IT技术

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

  2021-03-18 我要评论
想了解flex tree自动显示横向滚动条实现代码的相关内容吗,在本文为您仔细讲解横向滚动条的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点: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 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);
}
}
}

Copyright 2022 版权所有 软件发布 访问手机版

声明:所有软件和文章来自软件开发商或者作者 如有异议 请与本站联系 联系我们