分享

java学习——54.混合布局

 pythonjava学习 2021-04-06

在此篇之前,已经介绍了四种布局方式,流布局,边布局,网格布局和网格包布局。

(详情请看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();

    }

}

 其运行结果如下:

本例中,采用循环添加按钮,就不用再一个一个按钮去添加。

用数组为按钮上的文本赋值。

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多