江湖小白,初涉江湖,被weightx这个属性搞得焦头烂额,从入门到精通上说的还有点意思,但是小白看的也是云里雾里,只得上网求助希望有大神相助,哪知网上的大佬们一旦被小白问询就变得不食人间烟火,权重、空间等陌生名词脱口而出,信手拈来。只能自己摸索,有点感悟,出来炫耀一下。
weightx这个属性,与具体数值无关,创建网格对象后,引用此属性后,会获得相应比例的额外空间。
什么是额外空间?这就是整个问题的关键,在窗体没有最大化设置的时候加上组件的大小不是太小基本上看不出来有什么变化,但是一旦出现窗体最大化功能,将窗体到最大化后,网格中的组件外面会出现很大的额外空间。
这时候想要填充余出来的额外空间,就需要使用weightx这个属性。比如说有三个组件在一行上,如果你不设置这个属性,系统就会自动设置为0;这样的话就会出现大片额外空间。
如果第一个设置为1,第二个为2;第三个为3且填充方式设置为水平填充,最大化窗口后发现这几个组件将额外空间填充完毕,而且是以1:2 : 3的比例填充。
记住,一定要最大化窗口,因为大部分窗口都是适中的,显示的并不明显,只有当最大化窗口时才能最直观的观察到这个属性的妙用。