GUI组件概述awt:AbstractWindowToolkit——。awt处理用户界面元素的方法是把这些元素的创建和行为委托给每个目标平台(如windows,Linux)上的本地GUI处理。每个平台提供的图形界面元素都不一样。不同平台上的awt库存在不同Bug。,到目前的版本基本没变。swing:。Swing组件全部是由纯Java编写的,用户界面元素都绘制在空白窗口上,绘制和行为都由swing类自己完成。各平台之间唯一不同的就是最外层窗口的创建。总结:尽管awt的用户界面组件仍然可以用,但是建议最好不要使用。现在编写Java图形界面程序,使用swing组件+awt事件处理模型。事件处理概述图形用户界面编程中,必须使用事件处理。程序的执行不是一条连续的线,而是很多独立的片段。支持GUI的操作环境会不断监视事件,并把事件报告给正在运行的程序。这是多任务的需要。每个程序自己决定如何响应这些事件。Java的事件处理采用的是事件监听器方式。事件监听器是一个实现了监听器接口的对象。事件源(如按钮组件)是一个能够注册监听器并为它们发送事件的对象(可视构件)。每个事件源拥有自己的事件监听器,可以有多个。当事件源产生了一个事件后,事件源就会给所有监听器对象发送通知,即调用事件监听器对象的相应方法。事件的信息被封装在一个对象中,不同事件源能够产生不同种类的事件。编程人员要做的就是编写事件监听器类,创建一个事件监听器对象,并添加到相应的事件源。事件源事件监听器事件事件监听器编写编写事件处理程序的步骤如下:编写监听器类;在监听器类中实现接口中需要的方法;方法中可以使用ActionEvent对象获取事件参数;创建一个事件监听器对象;将该对象添加到事件源。.*;.*;.*;lassExample1extendsJFrame{publicExample1(){ setSize(320,200); setDefaultCloseOperation(); ContainercontentPane=getContentPane(); JButtontestButton=newJButton("Test"); (newMyListener1()); (newBorderLayout()); (testButton,);}}classMyListener1implementsActionListener{publicvoidactionPerformed(ActionEvente){ (null, "mand:"+());}}事件源与监听器的关系一个事件源可以对应多个监听器。一个监听器可以对应多个事件源。classMyListener2implementsActionListener{publicvoidactionPerformed(ActionEvente){ mand=(); ColorbkColor=null; if(("Red"))bkColor=newColor(255,0,0); elseif(("Green"))bkColor=newColor(0,255,0); elseif(("Blue"))bkColor=; getContentPane().setBackground(bkColor);}}{publicvoidactionPerformed(ActionEvente){ (null, "mand:"+());}}lassListener1implementsActionListener{ publicvoidactionPerformed(ActionEvente){…}}事件源:当事件发生时事件源自动调用监听器列表中各个对象的相应方法列表(LinkedList):事件源的addActionListener方法可以将监听器对象添加到列表中监听器对象监听器类inte
Java程序设计事件处理课件 来自淘豆网m.daumloan.com转载请标明出处.