Qml自编RowLayout与ColumnLayout控件的实现
1、使用方法一: 默认没参数的会前后没有间距,控件与控件之间等分间距。

3、使用方法三: 当rowInterval为指定参数时,即功能为控件第一个与最后一个控件与边框的距离,其余控件之间距离等分,说起来有点复杂,还是看图吧。 可以看到一个rowInterval为20,一个为60的效果与边框的距离都不一样,在特定场合下使用特别有用,比如用于布局标题栏。

4、使用方法三: 以上的布局可能也不适合你的使用,那就使用arrayWidthSpacing参数吧。arrayWidthSpacing参数主要用来指定控件与控件之间的距离的,使用这个选项可以大大缩短你繁琐的布局时间,笔者在开发产品过程中使用得最多的一种布局方式了。 参数需要这样使用,比喻有三个控件,他们间距分别为20,30,那么arrayWidthSpacing应该这样表示:arrayWidthSpacing: [20, 30],多个控件以此类推。 图示为对比,一个是三个控件布局,一个是四个控件布局。

5、使用方法三: 当然你也可以使用全为0的设置。

7、 这里这种将rowProgram()函数的实现, function rowProgram() { if (arrayWidthSpacing.length) selectInterval()//该函数为arrayWidthSpacing函数指定间距执行函数。 else { if (rowInterval === 0) notBeforeAndAfterInterval()//该函数为rowInterval距离边框间距为零,控件与控件之间等分间距。 else if (rowInterval === 1) equalSpacing(); //该函数为rowInterval等分间距。 else selectBeforeAndAfterInterval() //该函数为rowInterval之间边框间距,其余控件间距等分。 } }

9、源代码实现(RowLayout与ColumnLayout)http://download.csdn.net/detail/nicai_xiaoqinxi/9714022