自由なレイアウト

GridLayout要素を利用することで、自由なレイアウトを実現した例を リスト 58 に、ダイアログでの表示例を 図 61 にそれぞれ示します。

GridLayout (表形式のレイアウト), HBoxLayout (水平に並べるレイアウト), VBoxLayout(垂直に並べるレイアウト) を使うことで、自由に要素を配置できます。 また、これらのレイアウトの中では Item では caption 属性は指定せず、 Label 要素でラベルを表示します。

GridLayout, HBoxLayout, VBoxLayout は入れ子にできます。 また、その中で GroupBox を利用することもできます。

リスト 58 自由なレイアウトの定義例
 1<Tab name="roughness" caption="Roughness">
 2  <Item name="diam" caption="Diameter of uniform bed material (mm)">
 3    <Definition valueType="real" default="0.55" />
 4  </Item>
 5  <Item name="j_drg" caption="Bed roughness">
 6    <Definition valueType="integer" default="0">
 7      <Enumeration value="0" caption="Calculated from bed material"/>
 8      <Enumeration value="1" caption="Constant value"/>
 9      <Enumeration value="2" caption="Read from file"/>
10    </Definition>
11  </Item>
12  <GroupBox caption="Manning's roughness parameter">
13    <GridLayout>
14      <Label row="0" col="0" caption="Low water channel" />
15      <Item row="1" col="0" name="sn_l">
16        <Definition valueType="real" default="0.01" />
17      </Item>
18      <Label row="0" col="1" caption="Flood channel" />
19      <Item row="1" col="1" name="sn_h">
20        <Definition valueType="real" default="0.01" />
21      </Item>
22      <Label row="0" col="2" caption="Fixed bed" />
23      <Item row="1" col="2" name="sn_f">
24        <Definition valueType="real" default="0.01" />
25      </Item>
26    </GridLayout>
27  </GroupBox>
28  <Item name="snfile" caption="Input file for Manning's roughness">
29    <Definition valueType="filename" default="Select File" />
30  </Item>
31</Tab>
../_images/layout_complex.png

図 61 自由なレイアウトのを利用したレイアウトのダイアログの表示例