1

次の単純なレイアウトは、サイズ変更後に垂直方向に拡張されず、垂直方向にのみ拡張されます。hug_width私はすでに、hug_heightおよびパートナーと遊んで成功していません。私も制約を使ってみましたhbox

私は何が欠けていますか?

from enaml.widgets.api import MPLCanvas, MainWindow, HGroup, VGroup, CheckBox
enamldef PumpProbeViewer(MainWindow):
    HGroup:
        align_widths = False
        MPLCanvas: plot_wid:
            figure = Figure()
        VGroup: control:
            CheckBox:
                text = "Show current"
            CheckBox:
                text = "Show mean"
            CheckBox:
                text = "Show first detector"
4

1 に答える 1

2

チェック ボックスは垂直方向に拡張できないため、垂直方向のサイズは VGroup によって制限されます。展開できるように、VGroup に末尾のスペーサーを追加する必要があります。

enamldef Main(Window):
    HGroup:
        align_widths = False
        MPLCanvas:
            figure = Figure()
        VGroup:
            padding = 0
            trailing_spacer = spacer
            CheckBox:
                text = 'foo'
            CheckBox:
                text = 'bar'
            CheckBox:
                text = 'baz'

ただし、このタイプのレイアウトは、単一のコンテナで簡単に実現できます。ネストする必要はありません:

enamldef Main(Window):
    Container:
        constraints = [
            hbox(mpl, vbox(cb1, cb2, cb3, spacer))
        ]
        MPLCanvas: mpl:
            figure = Figure()
        CheckBox: cb1:
            text = 'foo'
        CheckBox: cb2:
            text = 'bar'
        CheckBox: cb3:
            text = 'baz'

これらの種類の質問については、Enaml グループにアクセスすることも検討してください: https://groups.google.com/forum/#!forum/enaml

于 2014-06-07T16:39:44.610 に答える