2013-04-24 147 views
0

我试图建立与显示和9按钮简单的计算器GUI网格布局不正确显示

public void init() 
    { 
     setSize(60,80); 
     inf = new InfoButton(this); 
     zero = new CalcButton(this,"0"); 
     one = new CalcButton(this,"1"); 
     add = new CalcButton(this,"+"); 
     sub = new CalcButton(this,"-"); 
     div = new CalcButton(this,"/"); 
     mlt = new CalcButton(this,"*"); 
     modu = new CalcButton(this,"%"); 
     blank = new JButton(""); 
     wys = new Wyswietlacz(); // its JTextPane 
     wys.setSize(60,20); 
     przyciski = new JPanel(); 
     przyciski.setSize(60,60); 
     przyciski.setLayout(new GridLayout(3,3)); 
     przyciski.add(zero); 
     przyciski.add(one); 
     przyciski.add(add); 
     przyciski.add(sub); 
     przyciski.add(mlt); 
     przyciski.add(div); 
     przyciski.add(modu); 
     przyciski.add(inf); 
     przyciski.add(blank); 
     calosc = new JPanel(); 
     calosc.setLayout(new BoxLayout(calosc,BoxLayout.Y_AXIS)); 
     calosc.add(wys); 
     calosc.add(przyciski); 
     calosc.setSize(60,80); 
     add(calosc); 



    } 

,并在主我就与大小(60,80)框架,但是当我使其可见所有我能看到的是显示和一排按钮。我究竟做错了什么?

+2

真的不好主意,使用setSize,键布局管理器处理它,并使用JFrame#pack来设置帧的大小 – MadProgrammer 2013-04-24 20:23:13

回答

1

在wys和przyciski上调用setPreferredSize(..)而不是setSize()。然后使用JFrame的pack(),而不是指定它的大小。