搞了一天了,不清楚是怎么回事,求大神指点迷津。。。代码及效果如下:

上图HorizontalSpacing设置为50,效果如下:

将HorizontalSpacing设置为5,间距就乱了:

因为这个键盘复用的地方比较多,且按键个数不固定,有时两行,有时一行,所以单独封装了一个类来处理,没有用ui设计器。按钮是一个个的添加到gridLayout中,如果把图片label和文本label去掉,设置间距就正常(就剩一个gridlayout布局了)。为什么会出现这种情况呢?有什么办法可以修正?多谢啦!!
------解决思路----------------------
看你说的情况,gridlayout不嵌套其它layout就ok?那想办法不要嵌套,看能不能实现你的效果。