【问题标题】:React when a scrollbar activates当滚动条激活时做出反应
【发布时间】:2013-12-02 16:55:48
【问题描述】:

我在容器中有一个 TextInput。我需要容器的水平滚动功能,以便当 textInput 很大时,它允许我滚动查看左右两侧的文本。滚动条轨道和拇指被设置为空,所以我可以看到文本。

                    trackSkin: ClassReference(null);
        thumbUpSkin: ClassReference(null);
        thumbOverSkin: ClassReference(null);
        thumbDownSkin: ClassReference(null);
        thumbSkin: ClassReference(null);

现在我想听一个事件或观察一个在水平滚动条激活时发生变化的属性。然后我想在容器上设置一个填充或在文本输入上设置左右属性,这样左右箭头就不会妨碍用户查看第一个和最后一个字符。

谢谢

【问题讨论】:

    标签: apache-flex flex4 flex3 scrollbar


    【解决方案1】:

    在添加监听器和访问 Scroller 的 HScrollBar 之前,您可能会发现这个设置/变量有些用处:measuredSizeIncludesScrollBars

    From the API:(请原谅糟糕的格式)

    如果为 true,则 Scroller 的测量尺寸包括可见滚动条所需的空间,否则 Scroller 的测量尺寸仅取决于其视口。

    像 TextArea 这样的组件会“重排”其内容以适应可用的宽度或高度,可以使用此属性来稳定其测量的大小。默认情况下,TextArea 由其 widthInChars 和 heightInChars 属性定义,在许多应用程序中,当 TextArea 外观的 Scroller 显示滚动条时,测量的大小最好保持不变。

    在内容不重排的组件中,例如典型的列表项,默认行为更可取,因为它使组件的内容不太可能被滚动条遮挡。

    如果这不起作用,我可能会添加一个附加到 Scroller 生命周期的事件侦听器。在该事件处理期间,我会检查滚动条是否为空。如果不是,我会将其存储在一边,但不是在将侦听器添加到其“显示”和“隐藏”事件之前。这样一来,您就可以在滚动条更改其状态时启动所需的任何操作。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-09-26
      • 1970-01-01
      • 2015-03-30
      • 2017-06-03
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多