java GUI的组成

Gui

Poment类的基本属性和操作方法

background:背景颜色。VoidsetBackgroundcolor)。Color getBackground()

bound:边界。Void setBoundsRectangle RectanglegetBounds()

void setBoundsintintintint

cursor:光标 void setCursorCursorCursor getCursor()

layoutMgr

布局

setLayout(LayoutManager)

LayoutManager getLayout()

enabled

使能

void setEnabled(boolean)

boolean isEnabled()

font

字体

void setFont(Font)

Font getFont ()

foreground

前景色

void setForeground(Color)

Color getForeground ()

--

位置

void setLocation(Point)

Point getLocation()

void setLocation(int,int)

Point getLocationOnScreen()

name

组件名称

void setName(String)

String getName()

--

尺寸

void setSize(Dimension)

Dimension getSize()

visible

可见性

void setVisible(boolean)

boolean getVisible()

GUI的组成

组件1 基本的控制组件,例如 ButtonLabel

2 容器:能容纳和排列组件的组件。

Container类描述啦容器组件的所有性质。继承于Component类,因此容器对象也是一个组件,具有组件的所有性质,但是反过来组件却不一定是容器

控制组件要想显示出来必须放置在容器组件里

AWT中存在两种主要的容器类型:

A java.awt.Window描述的是一个没有边框和菜单栏,可自由停靠的顶层容器(是指不允许将其包含于其他容器中)一般不直接使用该类,二十使用子类Frame

Bjava.awt.Panel 最简单而常用的容器,课作为容器包含其他组件,但是不能独立存在,必须被添加到其他容器中。

Eg

Import java.awt.*;

class TestFirstFrame{

publicstatic void main(String args[])

{

Frameframe=new Frame(“第一个图形用户界面应用程序”);//窗口标题栏中的标题文本

Labellbl=new Label(“这是我的第一个图形用户界面!”);//标签中显示的文本信息

lblsetBackgroundColor.prink);

frame.setLayout(new FlowlLayout());

fram.add(lbl);//将控制组件添加到容器中

fram.setSize(200,100);

frame.setVisible(true);

}

}

Frame默认的大小顺序为刚好容纳下标题条和最大(小)化,关闭按钮,setSize()可设置Frame的大小

Frame窗口默认是不可见的,可使用setVisibletrue|false)方法使之可见或隐藏

组件在容器中的摆放位置由布局管理器决定,Frame使用setLayout()方法可以设置窗口的布局

FlowLayout-------流式布局管理,特点是组件在容器中按照加入次序逐行定位,行内从左到右,一行排满后换行。

Eg 容器组件Panel的使用

Frame frame=new Frame容器Panel的使用);//顶层容器

Panel panel=new panel();//中间容器

Button btn=new Button(“确定”)//控制组件

Panel setBackground(Color.cyan);

Panel.setLocation(40,40);

frame setLayout(null);

frame.add(panel);//将中间容器加入顶层容器中

panel.add(btn);//将控制组件加入中间容器中

frame.setLocation(80,100);

frame.setSize(200,100);

frame.setVisible(true);

frame的默认布局理器被取消,人工设置了panel的尺寸大小和在容器里的位置

setSize()方法用于设置组件的尺寸大小,即宽度和高度,单位为象素

setLocation()方法用于设置组件在容器中的位置,即组件的左上角,即组件的做商检的坐标,单位也为象素

各个GUI容器都拥有自己的坐标系统(计算机的显示屏幕也是一种GUI容器容器对其中所包含组件的排列方式,包括组件的位置和大小的设定,被称为容器的布局(Layout

布局管理器:指系统事先定义好的若干容器布局效果,使用它们可以方便地实现组件在容器的布局管理,并能够满足各种常规需要。例如,FlowLayout

每一个容器都有默认的布局管理器,在创建一个容器对象时,同时也会创建一个相应的默认布局管理器对象,用户也可以随时为容器创建和设置新的布局管理器。
容器对象.setLayout(布局管理器对象
)
布局管理器 容器对象.getLayout()

FlowLayout:流式布局,是panel(及其子类)类型容器的默认布局管理器类型

布局效果:组件在容器中按照加入次序逐行定位,行内从左到右,一行排满后换行。组件按原始大小进行显示

构造方法

PublicFlowLayout()

PublicFlowLayoutint align

PublicFlowLayoutint alignint hagapint vgap

对齐方式可以使用FlowLayout类中定义静态常量来设定,主要包括

FlowLayout.LEFT

FlowLayout.RIGHT

FlowLayout.CENTE

Eg 流式布局的使用

f.setLayou(newFlowLayout());

f.add(button1);

f.add(button2);

f.add(button2);

f.add(button3);

注意:当容器的尺寸被重置时,其中的组件的位置也随之进行拉调整,但组件的尺寸维持不变。

BorderLayout:边界布局,是window及其子类类型的容器的默认布局管理器

布局效果:将整个容器范围划分为EastWestSouthNorthCenter五个区域,组件只能被添加到指定的区域。

每个区域只能加入一个组件,如若加入多个,则先前加入的组件会被遗弃

在使用边界布局的容器中,组件的尺寸也被布局管理器强行控制,即与其所在区域的尺寸相同。

构造方法
public BorderLayout()
public BorderLayout(int hgap,int vgap)

示例2BorderLayout的使用。

f.setLayout(new BorderLayout());

f.add(btnNorth,"North");

f.add(btnSouth,"South");

f.add(btnWest,"West");

f.add(btnEast,"East");

f.add(btnCenter,"Center");

注意:

当容器的尺寸发生变化时,其中各组件相对位置不变,尺寸随所在区域进行缩放调整;

调整原则:北、南两个区域只能在水平方向缩放(宽度可调),东、西两个区域只能在垂直方向缩放(高度可调),中部区域都可缩放。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值