2

enamlツールキットを使用していますが、初期化Splitter/SplitItemレイアウトの方法を知りたいです。

以下は、非常に単純なサンプル コードです。SplitItemウィンドウの幅の約 2/3 を左から、右が残りの 3 分の 1 になるようにウィンドウを開始したいと思いますSplitItem。さまざまな場所でさまざまな制約を試しましたが、何をする必要があるのか​​ わかりません。

ウィンドウは次のように始まります。 等幅分割アイテム

次のように開始したい: 左の分割項目を広くする

from enaml.widgets.api import (
    Window, Container, Splitter, SplitItem, Html
    )

enamldef Left(Container):
    Html:
        source = '<center><h1>Hello Left!</h1></center>'

enamldef Right(Container):
    Html:
        source = '<center><h1>Hello Right!</h1></center>'

enamldef Main(Window):
    initial_size = (800,400)
    Container:

        Splitter:

            SplitItem:
                Left:lt:
                    pass

            SplitItem:
                Right:rt:
                    pass
4

1 に答える 1

3

stretch各 でアトリビュートを使用しますSplitItem。初期幅は、ストレッチ値の合計の割合に比例します。したがって、左のものにはstretch = 3、右のものを使用しstretch = 1ます。これにより、スペースの 3/4 が左側に割り当てられ、スペースの 1/4 が右側に割り当てられます。ストレッチ値は浮動小数点値ではなく整数である必要があります。これは、基礎となるツールキットが予期しているものだからです。

于 2013-03-14T22:51:46.887 に答える