About

<#TEMPLATE_INCLUDE_NINEPAGE_ABOUTME#>
  • Mar

    27

    Flex 内置的 Canvas 、Box、 VBox、HBox 等容器组件当窗格中的内容过大时,滚动条的滑块会为的非常短,鼠标会难以选中操作,通过覆盖 updateDisplayList() 方法来限制滑块的极限值(最小高度与宽度):

    override protected function updateDisplayList(w:Number,h:Number):void {
     super.updateDisplayList(w,h);

     if (verticalScrollBar) {
        //设置 scrollThumb的最小高度。
        verticalScrollBar.scrollThumb.minHeight = 32;
        super.updateDisplayList(w,h);
     }

     if(horizontalScrollBar){
         //注意这里是minHeight,不是minWidth,它是通过垂直滚动条旋转90度实现的
        horizontalScrollBar.scrollThumb.minHeight = 32;
        super.updateDisplayList(w,h);
     }
    }

    More...

    Mar

    26

    Flex 容器的滚动条滑块是随着容器的内容变大,而反比率缩小的,当内容过大时滑块会缩的过小,会导致用户操作时鼠标不容易点中。在很多情况下我们并不希望自定义一个类去复盖一整个类的方法,往往只是想通过一个属性或方法来设定最小值。这时可以通过获取滑块引用的方式来定义它的最小值。如以下代码垂直滚动条的最小高度设定为32:

    var scrollThumb:ScrollThumb = myXxxx.verticalScrollBar.getChildAt(2) as ScrollThumb; 
    scrollThumb.minHeight = 32;

    横向滚动条也是同样的设定方法,但有一点,横向滚动条只是垂直滚动条的简单旋转,所以当设定它的宽度值时,其实是在设定它的高度值;反过来如果设定它的高度值,其实才是设定它的宽度值。

    More...