java swing container_Java Swing GUI学习(一)

1.GUI组件的左上角坐标默认为(0,0)

2.从左上角到右下角,水平坐标x与垂直坐标y增加

也就是说其坐标系如下

——————————————————————>x

|

|

|

|

|

|

|

|

y

3.坐标的单位是像素

在执行paint方法时,系统会传递一个指向特定平台的Graphics子类的图形对象g

Graphics2D是Graphics的抽象子类

Swing组件实在原来AWT组件上扩展而来的

JButton

JCheckBox

JScrollbar

都是JComponent类的子类

Component类

包含paint,repaint类,可以在屏幕上绘制组件

Container类

容纳相关组件

包括add方法,用来添加组件

包括setLayout方法,用来设置布局

顶层容器(JFrame,JDialog,JApplet)

JFrame

主窗口

JFrame(String title);

JFrame f1=new JFrame(String title);

创建一个标题为title的主窗口

JDialog

JApplet

————————————————————————————————————

中间层容器(一般用途,特殊用途)

一般用途

JPanel

JScrollPane

JSplitPane等

特殊用途

JPanel

JPanel j1=new JPanel();

默认使用FlowLayout布局

JScrollPane

JToolBar

工具栏

————————————————————————————————————

原子组件

JButton

按钮组件

JButton button = new JButton("按钮名称");

JLabel

显示文本的组件

JLabel label = new JLabel("文本标签显示内容");

TextArea

TextArea ta=new TextArea("输入区域默认内容");

JTextField

用于输入的文本域

JTextField useText = new JTextField(20);

参数为column数

JPasswordField

和输入文本域类似,,但是输入的信息会以.代替,保证密码(password)的安全性

JMenuBar

菜单条

JMenuBar jb=new JMenuBar();

————————————————————————————————————

布局

example:

setLayout(new FlowLayout());

f.setLayout(new FlowLayout());

BorderLayout

FlowLayout

JPanel默认使用的布局管理器,只是简单地把组件放在一行,若容器不足够容纳所有组件,则新起一行

GridLayout

按照指定的行数和列数将界面分成格子

BoxLayout

将组件放在单一的列或行中

SpringLayout

能够精确指定组件之间的间距

CardLayout

内部类可以非常方便的编写事件驱动程序

————————————————————————————————————

事件处理

鼠标移动,单双击鼠标各个按钮,单击按钮等等

Swing通过事件对象来包装事件

事件源

与用户进行交互的GUI组件,表示事件来自于哪个组件或者对象

事件监听器

负责监听事件并作出响应

一个事件源可以注册多个事件监听器,每个监听器又可以对多种事件进行响应

通过事件源的addxxxListener方法被注册到某个事件源上

要实现事件监听器接口就要实现接口中所有的方法,即便是一对空的花括号也要写,即空方法体也要写

如果有Adapter适配器类,那就不需要写空方法体,因为空方法体已经提前实现好了

事件对象

封装了有关已发生的事件的信息

ActionEvent

发生在按下按钮,选择了一个项目,在文本框中按下回车键

ItemEvent

ChangeEvent

————————————————————————————————————

零散实用

f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

设置程序默认关闭功能

f.setSize(350,200);

第一个参数为宽度width,第二个参数为高度height

f.setVisible(true);

设置界面可见

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值