已知列数,和按钮宽度,屏幕宽度,实现根据自动间距计算

image.png
width = 500
columns = 3  # 列数
childcount = 10
btnSize = 50
margin = (width - columns * btnSize) / (columns + 1)

oneY = 100
oneX = margin
print("margin " + str(margin))
print("按钮的宽度"+str(btnSize))

for current in range(0, childcount):
    col =int( current % columns)
    row = int(current / columns)
    x = oneX + (col * (btnSize + margin))
    y = oneY +( row * (btnSize + margin))
    print("current " + str(current) + ",x:" + str(x) + ",y :" + str(y)+"属于第"+str(col)+"列 第"+str(row)+"行")

在这里我加上了2个括号,实际上是先乘除后加减,对于我这种小学没毕业的,刚还是没悟出来。 0*任何数得0 所以第一行的x,第一个按钮margin并没有加上宽度。

margin 87.5
按钮的宽度50
current 0,x:87.5,y :100.0属于第0列 第0行
current 1,x:225.0,y :100.0属于第1列 第0行
current 2,x:362.5,y :100.0属于第2列 第0行
current 3,x:87.5,y :237.5属于第0列 第1行
current 4,x:225.0,y :237.5属于第1列 第1行
current 5,x:362.5,y :237.5属于第2列 第1行
current 6,x:87.5,y :375.0属于第0列 第2行
current 7,x:225.0,y :375.0属于第1列 第2行
current 8,x:362.5,y :375.0属于第2列 第2行
current 9,x:87.5,y :512.5属于第0列 第3行
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容