为了让图形界面变得有意义,则必须加入事件处理。事件类都继承了EventObject类。为了能跟踪事件源,EventObject类提供了getSource()方法来返回触发事件的对象。事件处理主要有三个部分:
事件源
1.只有Swing和awt的图形界面组件才能成为事件源对象。
2.事件发生的地方,动作发生在哪一个组件上,那么该组件就是事件源对象。
事件监听器方法
addActionListener(ActionListener l);
类似按钮上的鼠标点击或者输入框中的回车
addMouseListener(MouseListener l);
在事件源上发生鼠标按下,释放,单击,进入,离开操作时
事件接口(事件处理者)
定义类去实现ActionListener接口
定义类去实现MouseListener接口
注:对每个事件接口必须实现其所有的抽象方法。
举例:事件监听接口(MouseListener)中的抽象方法
public void mouseClicked(MouseEvent e) {
}
public void mouseDragged(MouseEvent e) {
}
public void mouseEntered(MouseEvent e) {
}
public void mouseExited(MouseEvent e) {
}
public void mouseMoved(MouseEvent e) {
}
事件适配器
监听器是一个对象,进行事件处理需要自动调用一个方法,为此创建该监听器的类需要实现相应接口中的所有方法。但是,通常每个组件需要的仅仅是接口中的个别方法。因此,为了使事件处理变得简单,Java为具有多个方法的监听器提供了对应的适配器(adapter)类。这个类的基本作用是屏蔽了事件监听器接口,是处理事件的类不必再实现事件监听器接口中的全部抽象方法。但是,处理事件的类只能继承一个事件适配器。因此,需要多个事件监听器时,可以自己定义一个事件适配器。
class MyMouseMotionHandle extends JFrame{
public MyMouseMotionHandle(){
super.setTitle("Welcome To MLDN") ;
super.addMouseMotionListener(new MouseMotionAdapter(){
public void mouseDragged(MouseEvent e){
System.out.println("鼠标拖拽到:X = " + e.getX() + ",Y = " + e.getY()) ;
}
}) ;
super.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e){
System.exit(1) ;
}
}) ; // 加入事件
super.setSize(310,210) ;
super.setVisible(true) ;
}
};
分享到:
相关推荐
在深入探讨Visual C++在图形图像处理方面的实践...通过熟练掌握这些工具和库,开发者可以创建出丰富多彩的图形界面和强大的图像处理应用。在实际项目中,不断实践和学习新的技术和技巧,将有助于你在这个领域不断提升。
在蘑菇街界面设计源码中,我们可以看到各个Activity是如何组织起来的,它们如何处理用户的交互事件,以及如何实现页面间的跳转。这有助于我们理解Android的Activity生命周期和Intent机制。 其次,源码中的布局文件...
4. **视觉样式**: MFC提供视觉样式支持,允许开发者应用Windows XP和更高版本的操作系统中的视觉样式到应用程序中,使界面看起来更加现代化。这可以通过CMFCVisualManager类实现。 5. **皮肤系统**: 开发一个皮肤...
标题中的"C语言 贪食蛇 有好看的图形界面"是指使用C语言编程实现的一款经典游戏——贪食蛇,而且这款游戏具有吸引人的图形用户界面。贪食蛇游戏自诞生以来,已经成为许多程序员学习编程时的经典练习项目,因为它涉及...
3. **数据绑定**:为了将图形界面与后台业务逻辑关联起来,数据绑定是必不可少的。Silverlight的双向数据绑定特性允许界面元素直接反映数据模型的变化,反之亦然。 4. **状态管理**:流程设计器通常需要维护多个...
WPF动画是其强大的特性之一,它可以让你的应用程序中的元素动起来,创造出引人入胜的视觉效果。WPF动画通过改变一个或多个属性随着时间的推移来实现动态效果。这些属性可以包括位置、大小、颜色、透明度等。WPF支持...
在本课程设计与实验辅导中,我们聚焦于多媒体技术中的一个重要方面——MATLAB图形用户界面(GUI)。MATLAB,全称“矩阵实验室”,是一种强大的数值计算和数据可视化工具,广泛应用于工程、科学以及数学领域。GUI则是...
#### 六、案例实践——让小猫动起来 - **实践步骤**: 1. **启动Scratch**:打开软件。 2. **更改语言**:如果启动时是英文或其他语言版本,可以通过菜单栏的设置选项更改为中文。 3. **保存文件**:为了防止...
动画框控件可以添加到程序界面中,通过设置其属性和编写相关事件代码,来实现图形的显示和动画效果。例如,可以通过"动画框_参照"方法设置动画框的参照点,这会影响图形的旋转中心。 接着,画立体图形的核心在于...
《C语言图形界面推箱子游戏——基于EasyX库在VC6.0下的实现》 C语言作为编程领域的基础,其简洁高效的特点深受程序员喜爱。在本项目中,我们利用EasyX图形库为C语言构建了一个简易的推箱子游戏。EasyX是一个面向C/...
总结起来,WPF放大镜功能的实现涉及到了WPF的图形渲染、`VisualBrush`、`ScaleTransform`以及事件处理等多个核心概念。通过这种方式,用户可以在不离开主视图的情况下,查看界面中的微小细节,提升了用户体验。如果...
8. **Spring animations**:Spring animations提供了一种物理模拟的效果,让动画看起来更自然。源码中可能包含了如何设置spring的参数,如阻尼(damping ratio)和初始速度(velocity)。 9. **CAKeyframeAnimation...
【多媒体技术——Flash动画制作】 在信息技术领域,多媒体技术涵盖了多种表达形式,其中包括动画制作。本教程主要聚焦于使用Adobe Flash进行动画创作。Flash是一款强大的平面矢量动画软件,尤其适用于创建网页、...
综上所述,"风车礼花——C++实现"项目涵盖了C++的多个核心概念和技术,包括GUI编程、事件处理、图形绘制、随机数生成、动画效果模拟以及性能优化,体现了C++作为高级编程语言的强大功能和灵活性。
QTUI,即QT用户界面,是QT库中的一个重要组成部分,它允许开发者通过直观且高效的方式设计和构建美观的图形用户界面。 在"quitool_QT_qt界面漂亮_QT界面美化_qt漂亮界面_QTUI"这个项目中,我们看到的"frmquitool.ui...
EX_UI界面库是易语言中专门用于创建用户图形界面(GUI)的工具包。它为开发者提供了丰富的控件集和设计元素,使得构建美观、高效的软件界面变得更为简单。在201805.26#1版中,EX_UI界面库进行了诸多优化和更新,旨在...
5. **触发器(Triggers)**:为了使猫动起来,可以使用事件触发器,例如当程序启动或用户点击某个按钮时开始动画。这可以通过设置EventTrigger和Storyboard.Start方法来实现。 6. **定时器(Timer)**:为了确保猫...
下面将详细介绍如何利用WPF来实现不规则图形的创建,并结合给定的文件名“WpfCloudCtrl”探讨一个可能的用户控件——云形控件。 1. **WPF图形绘制基础**: WPF中的图形绘制主要基于`System.Windows.Shapes`命名...
通过学习和实践此类项目,开发者可以深入理解VB的图形界面设计,并具备创建复杂用户界面的能力。这个氢气球窗体的例子就是一个生动的示例,它将理论知识与实际应用相结合,有助于提高开发者在图形化编程方面的技能。