0

フレックスにネストされたVBoxがいくつかあり、コンテンツの合計がウィンドウの高さよりも大きい場合に、そのうちの1つでスクロールバーを取得することを目指しています。

ただし、コンテナーを拡大すると、スクロールバーがまったく取得されず(垂直スクロールポリシーはAUTO)、外側のコンテナーが画面の下部を超えて伸び、アプリ全体がスクロールバーを取得します。

したがって、次のようになります。

 ____________
|            |
| Container  |
|            |
|____________|
|            |
| Scrolling  |
| Container  |
|____________|
|            |
| Container  |
|____________|

下部のコンテナのサイズが大きくなったときに、内側の(スクロールする)コンテナだけがスクロールバーを取得するようにするにはどうすればよいですか?

ありがとう

4

2 に答える 2

1

VBoxスクロールバーを取得する場所Canvas

<mx:VBox ... />

<mx:Canvas width="100%" height="100%">
    <mx:VBox left="0" right="0" top="0" bottom="0"> ... </mx:VBox>
</mx:Canvas>

<mx:VBox ... />
于 2011-08-19T05:39:26.330 に答える
1

minHeightつまり、スクロールコンテナのプロパティをたとえば100に設定します。

<mx:VBox height="100%">
    <mx:Something/>

    <mx:VBox minHeight="100" height="100%">
        <!-- here will be scrollbars, if needed -->
        <mx:Something/>         
    </mx:VBox>

    <mx:Something/>
</mx:VBox>

デフォルトでは、ボックスはすべての子の対応するサイズによって最小サイズを計算します。外側のコンテナがレイアウトを作成するとき、Boxに、表示できる最小サイズと実際のサイズを尋ねます。したがって、手動で変更しない限り、最小サイズは実際のサイズと同じであるため、親コンテナはそれ自体を拡張するか、スクロールバーを表示します。

于 2011-08-19T06:55:14.400 に答える