Java Swing写图形界面笔记

最简单的界面,直接上图:

package swing;

import javax.swing.*;

public class test07 {
    public static void main(String[] args) {

        JFrame frame = new JFrame("超级棒棒糖");//创建窗口框架
        frame.setSize(500,300);//这是设置窗口大小宽和高
        frame.setVisible(true);//使创建好的页面显示出来

    }
}

这是结果:窗口会出现在屏幕的左上角

逐渐加东西:

package swing;

import javax.swing.*;

public class test08 {
    public static void main(String[] args) {

        int WIDTH = 500;
        int HEIGHT = 400;

        JFrame frame = new JFrame("超级棒棒糖");//创建窗口框架,即顶层容器
        frame.setLocation(300,300);//这个是指定窗口在屏幕中的位置的。PS:界面框架里的坐标零点都在左上角
        frame.setSize(WIDTH,HEIGHT);
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//使窗口上的最大化最小化,关闭发挥作用,,但是,有没有好像都可以使用,奇怪
        //frame.setVisible(true);显示函数放在这不显示组件,,很奇怪



        JPanel panel = new JPanel();//创建中间容器类对象
        frame.setContentPane(panel);//将中间容器使用setContentPane()方法把该容器置为JFrame的内容面板
        //基本组件是不可独立显示的组件,只能寄托在中间容器上

        JButton button1 = new JButton("点这个");//创建一个基本组件,一个按钮
        panel.add(button1);//将按钮添加到中间容器中

        JLabel label1 = new JLabel("中午吃麻辣拌吧");//创建一个基本组件,一个标签
        frame.add(label1);//但是现在直接用frame添加也可以了,有朋友知道为什么嘛

        JTextField t1 = new JTextField(10);//创建一个基本组件,一个文本框,需要设定容量长度
        JTextArea T1 = new JTextArea(10,15);//创建一个基本组件,一个文本域,需要设定行和列

        frame.add(t1);
        frame.add(T1);
        frame.setVisible(true);//为什么我的这个显示函数放在最后才能显示那些组件,这也是个问题
    }
}

 结果是这样子的:

今天学按钮的动作事件

package swing;

import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.FileOutputStream;

public class test09 {
    public static void main(String[] args) {
        JFrame frame = new JFrame("想吃方便面的窗口" );
        int width = 500;
        int height = 400;
        frame.setSize(width,height);
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//        frame.setVisible(true);

        JPanel panel = new JPanel();
        frame.setContentPane(panel);

        Toolkit kit = Toolkit.getDefaultToolkit();//获取默认工具包
        Dimension screenSize = kit.getScreenSize();//获取窗口尺寸
        int x = (screenSize.width-width)/2;
        int y = (screenSize.height-height)/2;
        frame.setLocation(x,y);//窗口置于屏幕中央

        JTextField t1 = new JTextField(10);
        JLabel lable1 = new JLabel("*");
        JTextField t2 = new JTextField(10);
        JButton b1 = new JButton("=");
        JTextField  t3 = new JTextField(10);

        panel.add(t1);
        panel.add(lable1);
        panel.add(t2);
        panel.add(b1);
        panel.add(t3);

        b1.addActionListener(new ActionListener() {//给按钮创造一个匿名类来处理按钮的动作事件
            @Override
            public void actionPerformed(ActionEvent e) {//通过在侦听器-a和侦听器-b上调用actionPerformed方法处理actionPerformed事件。
                t3.setText(String.valueOf(Integer.parseInt(t1.getText())*Integer.parseInt(t2.getText())));
            }
        });
        
        frame.setVisible(true);

    }
}

运行结果如下,界面窗口出现在屏幕正中间。点击等号按钮可以进行简单的计算。

今天写布局,用swing写一个小计算器页面

上码子

package swing;

import javax.swing.*;
import java.awt.*;

public class test10 {
    public static void main(String[] args) {
        JFrame frame = new JFrame("小田计算器");
        int WIDTH = 300;
        int HEIGHT = 400;
        frame.setSize(WIDTH,HEIGHT);
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        Toolkit toolkit = Toolkit.getDefaultToolkit();
        Dimension screensize = toolkit.getScreenSize();
        frame.setLocation((screensize.width-WIDTH)/2,(screensize.height-HEIGHT)/2);

        JPanel panel = new JPanel();
        frame.setContentPane(panel);

        panel.setLayout(new BorderLayout());//BorderLayout()把容器分为东南西北中

        JPanel p1 = new JPanel();
        JPanel p2 = new JPanel();

        panel.add(p1,"North");//将p1容器放在最上面
        panel.add(p2);
        GridLayout lay = new GridLayout(5,4);//GridLayout(行数,列数),将容器平均分配为几个块块
        //FlowLayout,流式布局,水平的平均的格格
        p2.setLayout(lay);

        JTextArea t1 = new JTextArea(2,25);
        JButton b1 = new JButton("C");JButton b2 = new JButton("%");
        JButton b3 = new JButton("<——");JButton b4 = new JButton("÷");
        JButton b5 = new JButton("7");JButton b6 = new JButton("8");
        JButton b7 = new JButton("9");JButton b8 = new JButton("×");
        JButton b9 = new JButton("4");JButton b10 = new JButton("5");
        JButton b11 = new JButton("6");JButton b12 = new JButton("-");
        JButton b13 = new JButton("1");JButton b14 = new JButton("2");
        JButton b15 = new JButton("3");JButton b16 = new JButton("+");
        JButton b17 = new JButton("00");JButton b18 = new JButton("0");
        JButton b19 = new JButton(".");JButton b20 = new JButton("=");

        p1.add(t1);
        p2.add(b1);p2.add(b2);p2.add(b3);p2.add(b4);
        p2.add(b5);p2.add(b6);p2.add(b7);p2.add(b8);
        p2.add(b9);p2.add(b10);p2.add(b11);p2.add(b12);
        p2.add(b13);p2.add(b14);p2.add(b15);p2.add(b16);
        p2.add(b17);p2.add(b18);p2.add(b19);p2.add(b20);


        frame.setVisible(true);
    }
}

结果截图

功能下次实现,现在只能看 //啊这,,,

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值