TCP/IP应用开发详解&&可视化用户界面开发

可视化用户界面开发

 

图形界面开发API嘴常用的是:

1、  AWT 抽象窗口工具包

2、  JFC/Swing java基础类

 

 

组件为GUI程序的基本组成部分,而组件布局管理器则是构建GUI程序的粘合剂,理解好了组件管理器对构建一个漂亮美观的GUI程序帮助很大;

 

 

Q&A:

1、  容器组件渲染?

2、  事件中的适配器?监听器?

 

 

A2:AWT包中提供了事件处理机制

简单说来,就是事件源产生一个event对象,并且传递event对象给事件监听者,事件监听者对收到的对象作出相应回应,主要是通过调用相应的事件处理程序,完成事件处理。

 

 

 

Java事件机制三个对象:

事件源、事件对象、事件监听者

        事件源:产生事件的对象或组件,如按钮/文本框图形组件、计时器非图形对象;

事件源必须具备3功能:增加/去除监听者的方法;包含一个事件监听者的列表;包含产生并传递正确的事件对象类型给相应事件监听者的规则。

一个事件源可以产生多个不同的事件,下面是实现事件机制的框架:

public class mellonEventGenerator{

   public void addMellonListener(MellonListener l)

   { 添加事件监听者列表}

   

   Public void removeMellonListener(MellonListener)

   {  移除事件监听者  }

 

   Private void notifyMellonListener()

   {  //使用this作为参数创建MellonEvent实例

   MellonEvent mellonEvent = new MellonEvent(this);

  //传递事件给事件监听者,通知事件监听者执行目标操作

 }

 

}

         事件对象

所有的事件都是java.util.EventObject类的子类;继承此类就可构造自己的事件类;

         事件监听者

事件源通知的事件的目标对象,必须从恰当的接口实现,所有的事件监听接口都继承自java.util.EventListener接口。

例如:

Public interface MellonListener extends java.util.EventListener

{

   Public void handleMellonEvent(MellonEvent e);

}

 

我们实现此接口就可以得到一个事件监听者对象:

Public class MellonListenerTest implements MellonListener

{

   System.out.println(“I receive the event MellonEvent”);

}

 

现在,事件监听者还不能监听到事件,我们还要到事件源中注册事件监听者:

MellonEventGenerator eventSource = new MellonEventGenerator();

MellonListenerTest listener = new MellonListenerTest()

eventSource. addMellonListener(listener);

如果结束对eventSource的监听,调用removeMellonListener方法即可。

 

事件类型:

所有定义在java.awt.event包中的事件可以分为两类,semanticlow-levelSemantic事件类型是多个low-level事件的组合结果。在java.awt.event包中,定义了ActionEventItemEventTextEventAdjustmentEvent四种semantic事件,而FocusEventInputEventKeyEventMouseEvent等属于low-level事件。

 

 

使用swing组件

使用swing组件开发的程序至少拥有一个顶级容器,一般来说,应用程序都以JFrame作为用户界面层次起点,JDialogJFrame平级的;而对Applet来说,JApplet便是用户界面层次起点。   

 

使用中间容器

中间容器主要是在顶级容器和底层组件之间提供一个过渡容器状态。上面提到的Root pane便是一个中间容器类。Root pane一般不被直接实例化,通常是通过JFrame得到,通常是通过getContentPane方法得到一个内容面板,但是实际上,Root Pane包含四部分,Glass paneLayered Panecontent pane、可选的menu barLayered Pane主要是用管理content panemenu bar

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值