在此篇之前,已经介绍了四种布局方式,流布局,边布局,网格布局和网格包布局。 (详情请看java学习——52、网格包布局;java学习——51、网格布局;java学习——50、边布局;java学习——49、流布局) 在实际的应用当中,可以灵活运用这四种布局方式的一种或多种,使界面更合乎用户的需要。 以“计算器”为例,本例用到了两种布局方式。 一种是Frame的默认布局:边布局。 一种是在面板中设置的:网格布局。 其完整代码如下: import java.awt.*; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; public class Calculato extends Frame{ TextField text; Button button[]; public Calculato(){ super("计算器"); this.setBounds(200, 200, 200, 200); this.setVisible(true); text=new TextField(30); this.add(text,"North");//Frame框架默认边布局 Panel p1=new Panel(); p1.setLayout(new GridLayout(4,4));//p1面板采用网格布局 String s[]={"+","-","*","/","1","2","3","4","5","6","7","8","9","0","=","CE"}; button=new Button[s.length]; for(int i=0;i<s.length;i++){ button[i]=new Button(s[i]); p1.add(button[i]); } this.add(p1); this.addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent e) { System.exit(0); } });//关闭窗口 } public static void main(String args[]){ new Calculato(); } } 其运行结果如下: 本例中,采用循环添加按钮,就不用再一个一个按钮去添加。 用数组为按钮上的文本赋值。 |
|
来自: pythonjava学习 > 《待分类》