当前位置: 代码迷 >> J2SE >> 怎么改变按钮的大小?
  详细解决方案

怎么改变按钮的大小?

热度:8870   发布时间:2013-02-25 00:00:00.0
怎样改变按钮的大小??
各位大哥大姐,怎样在又不局管理的情况下改变按钮的大小?
比如我在一个JPanel上面添加一些按钮,想在使用FlowLayout的情况下改变按钮的大小,该怎么实现?我试了一下,改变按钮的大小只有在不使用布局管理的情况下才能改变。这是我的代码,希望哪位高手能帮我改一下,或者直接给一个完整的代码,万分感激!!!
Java code
import javax.swing.*;import java.awt.*;import java.awt.event.*;public class Test extends JFrame{    Test(){        Container cp=getContentPane();        JButton b=new JButton("Button");        b.setBackground(Color.green);        b.setSize(100,80);        JPanel p=new JPanel();        p.setSize(100,90);        p.setBackground(Color.yellow);        p.add(b);        cp.add(p);        setVisible(true);        setBounds(300,200,300,200);    }    public static void main(String []fs){        Test frm=new Test();    }}


------解决方案--------------------------------------------------------
使用 setPreferredSize 方法、setSize 方法 在使用布局管理器时被无视
------解决方案--------------------------------------------------------
setSize()已经过时了 ,没用 ,应该使用setPreferredSize( new Dimension(width,height))
------解决方案--------------------------------------------------------
把b.setSize(100,80);换成b.setPreferredSize(new Dimension(100,80));就可以了。
------解决方案--------------------------------------------------------
setPreferredSize
因为布局器会用 getPreferredSize 方法获取到的大小去 调用 setSize

推荐你自己去写一个布局器,就会明白的。
  相关解决方案