浮生日记:GUI 编程和关于其的一点心得。

由于开学又要准备答辩,疯狂肝java了现在就

要用汽车写一个租赁系统,还必须得用GUI,属于是现学现用了

简单来说就是awt包引用  布局管理器,框架 面板,还有一些关于集合的API,再加上之前学习的封装,总结出今天的代码。

import java.awt.*;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;

public class FlowLayout {
    public static void main(String[] args) {
        int id = 0;

        Frame f = new Frame();
        f.setLayout(new java.awt.FlowLayout(java.awt.FlowLayout.LEFT));// 流式布局 左对齐
       // f.setLayout(new java.awt.FlowLayout(java.awt.FlowLayout.RIGHT));// 流式布局  右对齐
        // f.setLayout(new java.awt.FlowLayout());//流式布局 居中
         f.setBounds(400,400,400,400);
         f.setBackground(Color.black);
        f.add(new Button("这是第"+(++id)+"个按钮"));
        f.add(new Button("这是第"+(++id)+"个按钮"));
        f.add(new Button("这是第"+(++id)+"个按钮"));
        //注意为什么上面会是乱码 因为JDK不和windows用的一个系统 乱码解决方法:直接在在“Run“中输入-Dfile.encording=gbk即可;

        f.setVisible(true);
        f.addWindowListener(new WindowAdapter() {
            @Override
            public void windowClosing(WindowEvent e) {
           System.exit(0);//解决按X退出问题;
            }
        });




    }
}

最后设计出一个这样的按钮界面,思路代码如下:思路

 

 按钮套面板 面板套面板 面板套框架,算是把流式 东西南北中 还有表格布局整的有点眉目了。

import java.awt.*;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;

import static java.awt.BorderLayout.WEST;

public class Homework {
    public static void main(String[] args) {
        Frame f  =new Frame();
        f.setBounds(400,400,400,400);
        f.setVisible(true);
        //因为用表格,黑色是否有用
        f.setBackground(Color.BLACK);
        f.setLayout(new GridLayout(2,1));

        //4个面板 东西南北中
        Panel p1 = new Panel(new BorderLayout());
        Panel p2 = new Panel(new GridLayout(2,1));
        Panel p3 = new Panel(new BorderLayout());
        Panel p4 = new Panel(new GridLayout(2,2));

        Button b1 = new Button("w1");
        Button b2 = new Button("e1");
        p1.add(b1, WEST);
        p1.add(b2,BorderLayout.EAST);
        for (int i = 1; i<=2 ;i++){
            p2.add(new Button("i"+i));
        }//p2要装四个按钮,这个时候没有区别,我们可以使用for循环
        //然后把上面的p2面板插入到p1面板中;
        p1.add(p2);
        //同理可得
        Button b3 = new Button("w2");
        Button b4 = new Button("e2");
        p3.add(b3,WEST);
        p3.add(b4,BorderLayout.EAST);
        for (int i =3;i<=6;i++){
            p4.add(new Button("i"+i));
        }
        p3.add(p4);
        //装完面板后,面板套框架;
        f.add(p1);
        f.add(p3);
        //最后用关闭按钮关闭
        f.addWindowListener(new WindowAdapter() {
            @Override
            public void windowClosing(WindowEvent e) {
                System.exit(0);
            }
        });


    }


}

 加油!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值