Java高级编程-- 9.2知识点

CUI 图形用户接口

swing组件继承关系

在这里插入图片描述

Swing顶级容器
JFrame、JDialog、JApplet

1、JFrame类
实现窗口基本功能

例 :

import javax.swing.JFrame;
import javax.swing.SwingUtilities;
public class JframeTest {
public static void creatAndShowGUI() {
//创建并设置JFrame容器窗口
JFrame jframe=new JFrame(“jFrameTest”);
//设置关闭窗口的默认操作
jframe.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//设置窗口尺寸
jframe.setSize(500,400);
//展示JFrame容器窗口
jframe.setVisible(true);
}
public static void main(String[] args) {
// TODO Auto-generated method stub
SwingUtilities.invokeLater(JframeTest::creatAndShowGUI);
}
}

2、JDialog
表示对话框窗口

import javax.swing.JFrame;
import javax.swing.SwingUtilities;
public class JframeTest1{
public static void creatAndShowGUI1() {
//创建并设置JFrame容器窗口
JFrame jframe=new JFrame(“jFrameTest”);
//设置关闭窗口的默认操作
jframe.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//设置窗口尺寸
jframe.setSize(500,400);
//展示JFrame容器窗口
jframe.setVisible(true);
JDialog jd=new JDialog(frame,“JDialog对话框”,true);
jd.setDefaultCloseOperation(JDialog.HIDE ON CLOSE);
jd.setSize(200,100);
jd.setVisible(true);
}
public static void main(String[] args) {
// TODO Auto-generated method stub
SwingUtilities.invokeLater(JframeTest1::creatAndShowGUI1);
}

}

布局管理器

Java有6种布局管理器,AWT提供了5种:

FlowLayout
BorderLayout
GridLayout
GridBagLayout
CradLayout
Swing还提供了一种:
BoxLayout

1、FlowLayout 流式布局

顾名思义,组件像水流一样,从第一行开始,从左向右依次排列,碰到边界时转到下一行继续。

在这里插入图片描述

三个构造函数:

FlowLayout() //使用默认参数
FlowLayout(int align) //设置对齐方式
FlowLayout(int align,int hgap,int vgap) //设置对齐方式、水平间距、垂直间距
align是FlowLayout类的常量,比如:FlowLayout.LEFT,FlowLayout.CENTER

2、BorderLayout 边界布局

将容器划分为EAST、WEST、SOUTH、NORTH、CENTER五个部分,每个部分可放置一个组件。
在这里插入图片描述
2个构造函数:

BorderLayout() //使用默认参数
BorderLayout(int hgap,int vgap) //设置水平间距、垂直间距
放置组件时需指定位置:

container.add(Component comp, Borderlayout.SOUTH); //第二个参数是BorderLayout类的常量,指定组件位置
container.add(Component comp); //缺省位置时,默认为BorderLayout.CENTER,放在中间
一共5个位置,一个位置最多放1个组件。

当然,可以在一个位置放置多个组件,只是后放置的组件会覆盖之前放置的组件。也可以一个都不放。

3、GridLayout 网格布局

将容器划分为指定行数、列数的网格,每个格子的尺寸都相同,一个格子中放置一个组件,适合组件大小差不多的,比如放置计算器的按钮。

从左往右、从上往下依次放置。
2个构造函数:

BorderLayout(int rows,int cols) //设置行数、列数
BorderLayout(int rows,int cols,int hgap,int vgap) //设置行数、列数、水平间距、垂直间距

4、绝对布局

绝对布局,就是可以硬性指定组件在容器中的位置和大小,使用绝对坐标来指定组件的位置与大小。
步骤如下:
(1)使用Container.setLayout(null)方法取消布局管理器。
(2)使用Component.setBounds()方法设置每个组件的大小与位置。

实现代码

import javax.swing.JButton;
import javax.swing.JFrame;

public class AbosoluteTest extends JFrame{

public static void main(String[] args) {
// TODO Auto-generated method stub
AbosoluteTest at=new AbosoluteTest();
at.initGUI();
}

public void initGUI() {
this.setTitle(“Abosolute frame”);
this.setVisible(true);
this.setSize(300,200);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//设置绝对布局
this.setLayout(null);
JButton jb=new JButton(“第一个按钮”);
jb.setBounds(10,20,200,20);
this.add(jb);
JButton jb2=new JButton(“第二个按钮”);
jb2.setBounds(30,50,200,20);
this.add(jb2);
}
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
java核心知识点整理 1.Java中没有多继承,而是用接口来代替多继承 2.运行一个已经编译的程序时,Java解释器总是从指定类的main方法中的代码开始执行,因此,执行代码中必须有一个main函数。 3.Java是典型的强类型语言,即必须声明变量的类型,Java中有8种类型,6种数值类型(4个整数型和2个浮点型)、一个字符类型和一个boolean类型。 想学习java可以来这个群,首先是二二零,中间是一四二,最后是九零六,里面有大量的学习资料可以下载。 4.强制类型转换: int nx = (int) x; // (语法:用圆括号将目标类型括起来,后面跟上要转换的变量); 5.Java不能为单独的方法,如main方法,定义局部常量,而只能为类定义常量,供该类的所有方法使用,所以,通常称之为类常量。如: class UsersConstants{ 2public static final double g = 32; public static final double main(String[] args){ System.out.println(g); } } 注意:常量定义于main方法的外边,而且必须有关键字 static final; 6.字符串的子串: String str = hello”“; String str1 = str.substring(0,4); //输出hell 7.不要用==运算符来测试两个字符串是否相等,该运算符只能判断两个字符串是否存在同一个位置。 用equals. String str = “hello”; str.equals(”hell”); // return false; 8.对象的行为、状态、标识 9.面向过程与OOP

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值