Java入门GUI第一章

Java入门GUI第一章

一.简介

GUI的核心技术:Swing     AWT

现在GUI逐渐被淘汰,因为:

  1. 界面不美观
  2. 需要jre环境

为什么我们要学习?

  1. 可以写出自己想要的小工具
  2. 工作时候可能会遇到维护Swing界面,概率特别小!
  3. 了解MVC架构,了解监听!

二.AWT

1.介绍 

  1. 包含了很多类和接口!GUI!
  2. 元素:窗口、按钮、文本框
  3. java.awt

 Java入门GUI第一章_第1张图片Java入门GUI第一章_第2张图片

2.组件和容器 

(1).frame  

单个frame

        // 实例化frame类
        Frame frame = new Frame("这个一个框");

        // 设置可见性
        frame.setVisible(true);

        // 设置窗口大小
        frame.setSize(500, 500);

        // 设置窗口背景颜色,实例化Color类
        frame.setBackground(new Color(50, 70, 300));

        // 设置窗口的弹出位置
        frame.setLocation(300, 300);

        // 设置窗口大小不可拖动改变
        frame.setResizable(false);

效果:Java入门GUI第一章_第3张图片

问题:无法关闭窗口,停止java程序 

 多个frame

我们先写一个frame的封装类:

import java.awt.*;

public class MyFrame extends Frame {

    // 静态序号,计算窗口个数
    static int id = 0;

    // 使用构造函数初始化弹出属性
    // 初始化的属性有大小,弹出位置,背景颜色
    public MyFrame(int x, int y, int w, int h, Color color) {
        // 计算窗口个数
        super("myFrame"+(++id));
        
        // 设置窗口可视化
        setVisible(true);
        
        // 设置窗口大小与弹出位置,使用Bounds可以同时设置
        setBounds(x, y, w, h);
        
        // 设置窗口背景颜色
        setBackground(color);
    }
}

 再写测试类:

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

        MyFrame myFrame1 = new MyFrame(100, 100, 400, 400, Color.black);
        MyFrame myFrame2 = new MyFrame(500, 100, 400, 400, Color.red);
        MyFrame myFrame3 = new MyFrame(100, 500, 400, 400, Color.blue);
        MyFrame myFrame4 = new MyFrame(500, 500, 400, 400, Color.green);
    }
}

效果:Java入门GUI第一章_第4张图片

(2).panel 面板 

  • frame中放置一个固定面板
            // 先完成窗口的设置
            Frame frame = new Frame();
            frame.setVisible(true);
            frame.setBounds(300, 300, 500, 500);
            frame.setBackground(new Color(128, 253, 190));
    
    
            // 将组件的布局设置为空布局,使你能够手动控制组件的位置和大小。
            frame.setLayout(null);
    
            // 面板的设置与窗口一样,但是面板在窗口里面要注意位置与大小
            // Panel是面板,可以放在窗口中,不能单独存在
            Panel panel = new Panel();
            frame.setVisible(true);
            panel.setBounds(50, 50, 400, 400);
            panel.setBackground(new Color(238, 47, 142));
    
            // 添加面板进窗口,
            frame.add(panel);

    效果:Java入门GUI第一章_第5张图片

 解决无法关闭窗口,停止java程序,后面还会再讲看不懂跳过

你可能感兴趣的:(java,开发语言)