用eclipse做了一个界面,界面中有很多按钮选项,并且实现了中英文切换的功能,在中文界面中设计好了界面后显示没有任何的问题,但是当切换到英文界面的时候,因为按钮中的字体数目不一样了,导致按钮出现了变形,字体比较多的按钮变得很长,字体较少的按钮变得很短,这个是怎么回事呢?有没有办法可以在使用GridBagLayout布局后对控件的大小进行限定?
求高手大虾们指导

解决方案 »

  1.   


    //创建一个GridBagConstraints域来限制
    GridBagConstraints gbc = new GridBagConstraints();
    GridBagLayout gb = new GridBagLayout();
    gbc.fill=GridBagConstraints.HORIZONTAL;//水平填充
    //建个方法对网格布局添加的组件进行控制
    public void addCpt(Component c,int row,int col,int h,int wid){
        gbc.gridx=col;
        gbc.gridy=row;
        gbc.gridheight=h;
        gbc.gridheight=wid;
        gb.setConstraints(c,gbc);//对组件C实现限制
         jp.add(c);//jp为面板,把限制后的组件添加在面板jp上
    }添加组件的时候就调用addcpt(组件,占的行,列,高,宽);