JAVA程序设计-第八章:图形界面设计(一)

简介: 做下笔记

第一节、AWT与Swing

设计图形用户界面时的步骤:选取组件、设计布局、响应事件
Swing组件与AWT最大不同是Swing组件在实现时不包括任何本地代码
AWT属于重量级组件,Swing组件比AWT拥有更多的功能

第二节、容器

1、顶层容器

Swing中提供了四种顶层容器:JFrame、JApplet、JDialog、JWindow
JFrame Code实例

package JavaProcessDesigner;

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

public class JFrameDemo {
    public static void main(String[] args) {
        JFrame frame = new JFrame("JFrameDemo");
        JButton button = new JButton("press me");
        frame.getContentPane().add(button, BorderLayout.CENTER);
        frame.pack();
        frame.setVisible(true);
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }
}

image.png

2、内容窗格

四个顶层容器中每一个都有一个内容窗格,顶层容器的组件都放在内容窗格中,有两种方式将组件放入内容窗格
(1)通过顶层容器的get-ContentPane()方法
(2)创建一个新的内容窗格,取代顶层容器默认的内容窗格
内容窗格 code实例

package JavaProcessDesigner.TuxXingJieMianSheJi;

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

public class JFrameDemo2 {
    public static void main(String[] args) {
        JFrame frame = new JFrame("JFrameDemo2");
        JButton button = new JButton("press me");
        JPanel contentPanel = new JPanel();
        contentPanel.setLayout(new BorderLayout());
        contentPanel.add(button,BorderLayout.CENTER);
        frame.setContentPane(contentPanel);
        frame.pack();
        frame.setVisible(true);
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }
}

image.png

3、面板

面板分为普通面板和滚动面板,面板并不能独自存在
面板 code实例

package JavaProcessDesigner.TuxXingJieMianSheJi;
import javax.swing.*;
import java.awt.*;

public class FrameWithPanel {
    public static void main(String[] args) {
        JFrame frame = new JFrame("Frame with Panel");//创建一个顶层容器
        Container contentPane = frame.getContentPane();//创建一个内容窗格
        contentPane.setBackground(Color.cyan);//设置内容窗格为蓝绿色
        JPanel panel = new JPanel();//创建一个面板
        panel.setBackground(Color.yellow);//设置面板颜色
        JButton button = new JButton("press me");//创建一个按钮
        panel.add(button);//将按钮添加到面板上
        contentPane.add(panel,BorderLayout.SOUTH);//将面板添加到内容窗格里
        frame.setSize(300,200);
        frame.setVisible(true);
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }
}

image.png

目录
相关文章
|
22天前
|
Java 测试技术 开发者
💡Java 零基础:彻底掌握 for 循环,打造高效程序设计
【10月更文挑战第15天】本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&订阅!持续更新中,up!up!up!!
108 63
|
6月前
|
Java 程序员
Java程序设计基础——循环中的跳转语句
Java程序设计基础——循环中的跳转语句
|
5月前
|
存储 小程序 前端开发
java毕设项目|宿舍管理系统小程序设计与实现
java毕设项目|宿舍管理系统小程序设计与实现
|
5月前
|
监控 Java API
Java 程序设计 第八章 线程
Java 程序设计 第八章 线程
|
5月前
|
Java 编译器 C语言
Java 程序设计 第2章 Java基本语法 笔记
Java 程序设计 第2章 Java基本语法 笔记
|
4月前
|
前端开发 Java 调度
优化Java中图形界面设计的技巧
优化Java中图形界面设计的技巧
|
6月前
|
Java 数据安全/隐私保护
Java程序设计实验2 | Java语言基础(一)
掌握变量的命名是否符合Java关于标识符的命名规则。
50 1
|
6月前
|
存储 算法 Java
Java程序设计实验2 | Java语言基础(二)
分别用do-while和for循环计算1+1/2!-1/3!+1/4!-1/5!…的前20项之和。
74 1
|
6月前
|
算法 Java
Java程序设计基础——位运算符简介
Java程序设计基础——位运算符简介
|
6月前
|
Java
Java程序设计基础——循环结构
Java程序设计基础——循环结构