Java网格包布局,组件垂直间距怎么调

这是添加组件的方法:
private void AddComponent(JFrame frame,GridBagLayout Layout,GridBagConstraints gbc,Component com,int row,int column,int numRows,int numColumns,int Weightx,int Weighty){ gbc.gridx=row; gbc.gridy=column; gbc.gridwidth=numRows; gbc.gridheight=numColumns; gbc.weightx=Weightx; gbc.weightx=Weighty; Layout.setConstraints(com, gbc); frame.add(com); } 添加组件的部分代码:
constraints.fill=GridBagConstraints.HORIZONTAL; constraints.anchor=GridBagConstraints.CENTER;
AddComponent(LogoFrame,Layout,constraints,tfName,1,1,1,1,0,0);
AddComponent(LogoFrame,Layout,constraints,tfPwd,1,2,1,1,0,0);
constraints.fill=GridBagConstraints.NONE;
AddComponent(LogoFrame,Layout,constraints,lbTitle,0,0,2,1,0,0);
AddComponent(LogoFrame,Layout,constraints,lbName,0,1,1,1,0,0);
AddComponent(LogoFrame,Layout,constraints,lbPwd,0,2,1,1,0,0);
AddComponent(LogoFrame,Layout,constraints,btnLogo,0,3,1,1,0,50);
AddComponent(LogoFrame,Layout,constraints,btnOut,1,3,1,1,0,100);
组件都挤在以前,怎么做到有间距

GridBagLayout里的各种设置都必须通过GridBagConstraints,因此当我们将GridBagConstraints的参数都设置
好了之后,必须new一个GridBagConstraints的对象出来,以便GridBagLayout使用。

参数说明:

gridx,gridy:设置组件的位置,gridx设置为GridBagConstraints.RELATIVE代表此组件位于之前所加入组件的右边。
若将gridy设置为GridBagConstraints.RELATIVE代表此组件位于以前所加入组件的下面。建议定义出gridx,gridy的
位置,以便以后维护程序。表示放在几行几列,gridx=0,gridy=0时放在0行0列。

gridwidth,gridheight:用来设置组件所占的单位长度与高度,默认值皆为1。你可以使用GridBagConstraints.REMAINDER常量,代表此组件为此行或此列的最后一个组件,而且会占据所有剩余的空间。

weightx,weighty:用来设置窗口变大时,各组件跟着变大的比例,当数字越大,表示组件能得到更多的空间,默认值皆为0。

anchor:当组件空间大于组件本身时,要将组件置于何处,有CENTER(默认值)、NORTH、NORTHEAST、EAST、SOUTHEAST、 WEST、NORTHWEST可供选择。

insets:设置组件之间彼此的间距,它有四个参数,分别是上,左,下,右,默认为(0,0,0,0).

ipadx,ipady:设置组件内的间距,默认值为0。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-03-04
添加这一句吧
gbc.insets = new Insets(5,5,5,5);本回答被提问者采纳
第2个回答  2014-03-04
对小WFDSDFSDFFSDSDRFDSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网