本节内容继续讲Layout系列的组件,上一篇本人说了,在程序界面布局中建议多用Layout组件,Layout组件究竟比Panel组件好在什么地方了?朋友们看完这一章就基本知道了。好了,话不多说直接讲例子。对了,说明一下,本人写代码的原则是,能不写就不写,能少写绝不多写!这个例子又是没有一句代码![呲牙][呲牙][呲牙],好了,下面开始:
新建一个Multi-Device Application项目,在窗体先添加两个TLayout和一个TSplitter组件,Layout1:Align设为MostLeft, Layout2:Align设为Client,Splitter1:放在两个Layout组件中间;
在Layout1上面,由上至下依次放置Label1、Layout3、Label2、ScaledLayout1(TScaledLayout组件)、Label3、GridLayout1(TGridLayout)、Label4、FlowLayout1(TFlowLayout)共8个组件,前5个组件Align设为MostLeft,GridLayout1:Align设为Client,底部两个Align设为MostBottom。
在Layout2上方一个Button1按键;另外多放了一个Label和Image只是为了说明和装饰,毕竟单纯的Form窗体颜色实在太呆板了。不过Image也不是一点用处没有的...
继续下一步,选中Button1,复制、粘贴到Layout3、ScaledLayout1、GridLayout1、FlowLayout1组件上,每个上面粘贴5个一模一样的Button,位置随便放。操作的过程中,就会发现Layout3、ScaledLayout1上放置的Button位置大小均无变化,GridLayout1、FlowLayout1上的Button有变化,看一下截图
一组Layout布局的窗体
我们运行程序,左右拖动Splitter。
向右拖动Splitter
向左拖动Splitter
现在,大家可以很直观的看到不同的Layout组件上放置的Button组件的变化了吧!具体的大家自己总结一下,我不多说了。跟着把一个例子学做一遍,感觉会更清晰的。可能大家会对GridLayout和FlowLayout有疑问:
1)GridLayout上面的Button是一个方块,能不能改变Button的形状(改变Width和Height);
2)除了他们上面显示的Button形状不太一样外,其他的好像也没什么不一样的?
下面具体说明一下,先来第一个问题:改变GridLayout上Button的形状;修改GridLayout1的参数:ItemHeight--32,ItemWidth--64,看一下变化