Curl Global Community
Viewのサイズを自動調整する方法 - Printable Version

+- Curl Global Community (https://communities.curl.com)
+-- Forum: Discussions (https://communities.curl.com/forumdisplay.php?fid=1)
+--- Forum: General Curl questions (https://communities.curl.com/forumdisplay.php?fid=2)
+--- Thread: Viewのサイズを自動調整する方法 (/showthread.php?tid=940)



Viewのサイズを自動調整する方法 - umemura - 07-12-2013

View を表示する際に、画面の大きさを、View の中に格納するグラフィックに合わせて表示したいです。

子供として格納するグラフィックのwidth と height を、View のインスタンスにセットすればよいとは思うのですが、
グラフィックのサイズがエラスティック(elastic)で指定されていると面倒です。

自身の中のグラフィックのサイズに合わせてViewの大きさを調整したいです。
よい方法はありますでしょうか。



RE: Viewのサイズを自動調整する方法 - umemura - 07-12-2013

View.set-size-from-child を利用することでうまく大きさを調整することができました。


Code:
{def fr1:Frame =
    {Frame
        background = "orange",
        width = {make-elastic preferred-size = 5in},
        height = {make-elastic preferred-size = 2in}
    }
}
{def fr2:Frame =
    {Frame
        background = "pink",
        width = {make-elastic preferred-size = 5in},
        height = {make-elastic preferred-size = 2in}
    }
}
{def fr3:Frame =
    {Frame
        background = "aqua",
        width = {make-elastic preferred-size = 5in},
        height = {make-elastic preferred-size = 2in}
    }
}
{def vb = {VBox fr1, fr3}}
{def v =  {View vb}}
{do  {v.show}}
{CommandButton
    label = "View のグラフィックを変更",
    {on Action do
        {vb.add index = 1, fr2}
    }
}
{CommandButton
    label = "View のサイズを調整",
    {on Action do
        {v.set-size-from-child}
    }
}