java 第七次课--图形用户界面概述补充(事件处理)

JAVA GUI(图形用户界面) Java提供了三个主要包做GUI开发:java.awt 包 – 主要提供字体/布局管理器javax.swing 包[商业开发常用] – 主要提供各种组件(窗口/按钮/文本框)java.awt.event 包 – 事件处理,后台功能的实现。 阅读详情

 在vc6、eclipse(java)中完成加法运算,对比难度。你会喜欢上java的!


(一)、用vc6完成:

1) 新建工程
2) 基于对话框的程序
3) 拖拽输入框1(加数1),符号1(“+”),输入框2(加数2),符号2(“=”),符号3(结果),按钮(“计算”)
4) 映射控件和变量之间的关系
5) 给按钮添加事件函数,填进下面的代码:

UpdateData();

 int a = m_a;
 int b = m_a;
 int c = a + b;
 char c1[128]="";
    itoa(c,c1 ,10);
 m_result = c1;
   
UpdateData(FALSE);


(二)、Java的加法器代码:

import java.awt.*;
import java.awt.event.*;
class Calculate extends Frame implements ActionListener
{
  TextField t1=new TextField(5);//第一个操作数文本框
  Label LOP=new Label("+");
  TextField t2=new TextField(5);//第二个操作数文本框
  TextField t3=new TextField(5);//结果文本框
  Label L1=new Label("=");
  Button btn=new Button("计算");
  public Calculate()
{
 setLayout(new FlowLayout());
 add(t1);add(LOP);add(t2);
 add(L1);add(t3);add(btn);
 btn.addActionListener(this);//注册动作事件监听者为当前对象
 addWindowListener(new WindowAdapter() {//关闭窗口事件
   public void windowClosing(WindowEvent e) {
  dispose();//释放窗口
  System.exit(0);//退出程序
   }
 });
  }
  public void actionPerformed(ActionEvent e){  
    float x,y;   //操作数变量
 double result=0;//结果变量
 String op;
 try{   //异常捕获机制
   x=Float.parseFloat(t1.getText());//将字符串数据转换成浮点型数据
   y=Float.parseFloat(t2.getText());
     result=x+y;
     t4.setText(Double.toString(result));
    }catch(Exception ee){t3.setText("数据错误");}//捕获异常,数据错误时,显示信息
  } 
  public static void main(String args[]) {
 Calculate mainFrame = new Calculate();
 mainFrame.setSize(400, 400);
 mainFrame.setTitle("两个数的加法计算程序");
 mainFrame.setVisible(true);
  }
}


引入事件处理机制后的编程基本方法如下:
①对java.awt中组件实现事件处理必须使用java.awt.event包,所以在程序开始应加入import java.awt.event.*语句。
②用如下语句设置事件监听者:
事件源.addXXListener(XXListener代表某种事件监听者)。
③ 事件监听者所对应的类实现事件所对应的接口XXListener,并重写接口中的全部方法。
这样就可以处理图形用户界面中的对应事件了。要删除事件监听者可以使用语句:
事件源.removeXXListener;

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

/**
 *摘自网络
 */
class AnonymousEvent extends JFrame{
    JButton btn;

    public AnonymousEvent()
    {
        super("Java事件监听机制");
        setLayout(new FlowLayout());
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        btn=new JButton("点击");
        /*匿名内部类******************************/
        btn.addActionListener
        (
            new ActionListener()
            {
                public void actionPerformed(ActionEvent e)
                {
                    Container c=getContentPane();
                    c.setBackground(Color.red);
                }
            }
        );
        /***************************************/
        getContentPane().add(btn);

        setBounds(200,200,300,160);
        setVisible(true);
    }

    public static void main(String args[])
    {
        new AnonymousEvent();
    }
}

 

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

/**
 *摘自网络
 */
class InnerClassEvent extends JFrame{
    JButton btn;

    public InnerClassEvent(){
        super("Java事件监听机制");
        setLayout(new FlowLayout());
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        btn=new JButton("点击");
        btn.addActionListener(new InnerClass());
        getContentPane().add(btn);

        setBounds(200,200,300,160);
        setVisible(true);
    }

    /*内部类*********************************/
    class InnerClass implements ActionListener{
        public void actionPerformed (ActionEvent e){
            Container c=getContentPane();
            c.setBackground(Color.red);
        }
    }
    /**************************************/

    public static void main(String args[]){
        new InnerClassEvent();
    }
}

import  java.awt.*;
import  javax.swing.*;
import  java.awt.event.*;
public  class  exec  implements MouseMotionListener , MouseListener , WindowListener
{
 private  JFrame  f;
 JTextField  tf;
 
 public  static  void  main(String  args[])
 {
  exec  demo = new  exec();
  demo.go();
 }
 
 public  void  go()
 {
  f = new  JFrame("三个监听器的实例");
  JPanel container = new JPanel();
  f.setContentPane(container);
  container.setLayout(new BorderLayout());
  
  tf = new  JTextField(30);
  container.add(new  JLabel("单击并拖动鼠标") , BorderLayout.NORTH);
  container.add(tf , BorderLayout.SOUTH);
  f.addMouseListener(this);
  f.addMouseMotionListener(this);
  f.addWindowListener(this);
  f.setSize(240 , 150);
  f.setVisible(true);
 }
 
 public  void  mouseClicked(MouseEvent  e){ }
 public  void  mouseEntered(MouseEvent  e)
 {
  String  s = "鼠标进来了";
  tf.setText(s);
 }
 
 public  void  mouseExited(MouseEvent  e)
 {
  String  s = "鼠标退出了";
  tf.setText(s);
 }
 
 public  void  mousePressed(MouseEvent  e){ } 
 public  void  mouseReleased(MouseEvent  e){ }
 
 public  void  mouseMoved(MouseEvent  e){ }
 
 public  void  mouseDragged(MouseEvent  e)
 {
  String  s = "鼠标拖动 :X="+e.getX()+"Y="+e.getY();
  tf.setText(s);
 }
 
 public  void  windowActivated(WindowEvent  e){ }
 public  void  windowClosing(WindowEvent  e)
 {
  System.exit(1);
 }
 
 public  void  windowClosed(WindowEvent  e){ }
 
 public  void  windowDeactivated(WindowEvent  e){ }
 
 public  void  windowDeiconified(WindowEvent  e){ }
 public  void  windowIconified(WindowEvent  e){ }
 
 public  void  windowOpened(WindowEvent  e){ }
}

 

JAVA GUI(图形用户界面) 阅读详情

相关推荐

Java图形用户界面

为什么要是用图形界面? 命令行操作VS鼠标点击操作 文字VS图标 黑白VS彩色图形化 大量记忆VS直观感觉 专家VS普通用户 图形用户界面(Graphic User Interface)的最基本的元素就是窗口(Windows) Java中图形界面的形式 Applet:嵌入到HTML网页中的Java程序 优势: 每次打开网页,Applet都可以重新下载,更新及时 客户端执行,比普通网页功能强大 缺...

Libra_Ng 1501

Java程序设计 图形用户界面 【八】事件处理

Java程序设计 图形用户界面 【八】事件处理 动作事件及监听处理 想让按钮变得有意义,就必须使用事件处理 使用ActionListener接口处理按钮的动作事件 方法 作用 void actionPerformed(ActionEvent e) 发生操作时调用 使用ActionListener监听 import javax.swing.*; import java.awt.*; import java.awt.event.ActionEvent; import java.awt.eve

小旺的博客 1211

BambuStudio学习笔记:OpenCSG - 实时构造实体几何(CSG)渲染的 OpenGL 方案

**OpenCSG** 是一个基于 **OpenGL** 的 **构造实体几何(CSG)** 实时渲染库,通过 **深度剥离算法** 实现布尔运算(并集、交集、差集)的可视化。其核心目标是简化复杂几何体的交互式建模,适用于 CAD 原型设计、3D 打印预览、教育工具等场景。

zzzkk2009的专栏 929

使用java图形界面实现简单的数据库增删查改

1.确定数据库连接类型 这里我使用的是SqlServer数据库

qq_43494997的博客 6925

基于 WebGoat 平台的 SQL 注入攻击

基于 WebGoat 平台的 SQL 注入攻击

Labulongdong的博客 3523

西红柿成熟度检测数据集总结

成熟度类别标注数量semiripe(半成熟)10275rotten(腐烂)13470fullyripe(完全成熟)35031unripe(未成熟)26212。

crz1336768325的博客 2125

java实验:设计图形用户界面,用顺序存取文件方式分别完成新增、删除、修改、查询、显示功能(excel)

要用excel,必须先导入jxl包,上一篇有讲,给个传送门 一.实验要求 设计图形用户界面,用顺序存取文件方式分别完成新增、删除、修改、查询、显示功能: 新增:让用户能输入学生的信息(学号、姓名、电话、邮箱信息),检查无误后将数据存入文本文件; 删除:删除正在显示的学生信息; 修改:修改正在显示的一条学生信息,修改后可保存至文本文件; 查询:让用户输入姓名,一条条显示查询到的学生信息(借助“下一条”、“上一条”按钮查看下一条和上一条数据)。 显示:显示文件中存储的所有学生信息(借助“下一条”、“上一条”按钮

qq_52641289的博客 2348

Apollo和autoware规划算法代码ros移植-路径规划可跑工程分享

Apollo6.0规划核心代码移植到Ros工程,可编译移植分享

weixin_39735688的博客 8509

Java图形界面之事件处理(一)

事件委托模型 1. 事件 当我们在GUI上进行交互操作时,鼠标在窗口上移动,拖动,我们就认为发生了鼠标事件;在文本框输入用户名,需要不断按下,松开键盘,我们就认为是发生了键盘事件。所以事件就是发生了什么事。 Java中事件(Event)是对象,对应的类称为事件类,Java规定了一系列的事件类,命名规则是XxxEvent,如:WindowEvent、KeyEvent、ActionEvent等,它们主...

wanan_jfw的博客 2202

NVIDIA DGX Spark 开发环境深度配置与优化指南

定期系统维护每月执行一次完整的系统更新监控存储空间使用情况,及时清理临时文件定期检查硬件健康状况开发习惯优化使用tmux或screen管理长时间运行的任务配置自动化测试和代码质量检查建立完善的项目文档体系性能调优周期每月重新评估和调整系统参数根据工作负载特点优化容器配置持续监控和记录性能指标DGX Spark作为一个强大的AI开发平台,其真正的价值需要通过精细的环境配置和优化才能充分发挥。本文提供的配置方案和建议均基于实际生产环境经验,旨在帮助开发者构建稳定、高效、可维护的开发环境。

time_days的博客 3688

乐视三合一体感摄像头--基本信息及windows下部分开发

乐视三合一体感摄像头--基本信息及windows下部分开发Introduction基本信息Windows下使用安装驱动使用openNI使用imageJ调用RGB图像Q:参考资料 Introduction       乐视三合一体感摄像头是乐视对标kinect,做的一款3D体感摄像头;设计目的为用于电视机上体感使用的,包括其USB结构都是为了符合电视机直接操作的,同时是支持相应的游戏操作;但是自从乐视倒闭之后,价格从之前标价899降到了现在140+左

GRF-Sunomikp31 1万+

如何使用Eclipse开发用户图形界面

看到Android 开发工具droiddraw-r1b8这个UI工具,如果能集成到Eclipse中就好了。可以参考下文来实现。如何使用Eclipse开发用户图形界面(类似VC拖放控件功能)2009-03-12,21:56:18版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明http://cyinger-smiling.blogbus.com/logs/3

成风的专栏 2万+

Android OTA 升级实战指南:从原理到实现

本文详细解析了Android OTA升级的原理与实现方法,包括AB升级与Recovery升级的机制对比、OTA升级包制作流程以及应用层升级功能的实现。通过实战案例和常见问题排查指南,帮助开发者掌握Android系统无线升级技术,提升设备维护效率。

weixin_42652674的博客 199

Java图形用户界面设计之概述

文章目录前言一、GUI概述1.创建 GUI 的一般步骤:(1)Component类(2)Container类(3)Window类(4)Frame 类例:建立一个Frame对象,并使之可见。创建GUI的一般步骤:容器与布局布局管理器(1)FlowLayout(2)FlowLayout布局程序示例(3) BorderLayout(4)BorderLayout布局程序示例:(5)GridLayout(6)GridLayout布局程序示例:(7) CardLayout常用组件(1)标签类(Label)(2)面板类(

weixin_56301399的博客 6609

信贷风控分析—征信数据源

详解企业和个人征信报告,以及信贷风控之指标构造案例参考

csdnbt的博客 3639

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

Java图形用户界面的事件处理

本文介绍了Java图形用户界面系统中的事件处理机制。事件是用户在界面上的一个操作。Java Swing采用AWT事件处理模型,在事件处理过程中涉及的主要概念有事件、事件源、事件处理方法、事件监听器类和事件监听器接口等。

hitmengfanchao的博客 3876

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

java 第六次课--图形用户界面概述

Java图形用户界面概述一、Java语言平台无关性组件的实现图形用户界面是当今流行的操作系统界面。Java语言为了适应发展趋势,也具有开发图形化的用户界面的功能。Java语言自身的特点要求其图形用户界面具有平台无关性。早期的Java版本JDK1.0和JDK1.1采用 的是AWT组件。特点是简单、易于理解。AWT组件中采用了一种称为对等体(peer)的机制,每个组件都有一个对应的对等体,是用

flyuniverse_shell的专栏 4808

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

Java | GUI 图形用户界面

GUI 全称 Graphical User Interface 图形用户界面,指采用图形方式显示的计算机操作用户界面。 软件以图形界面形式运行时,用户可借助于菜单、按钮、标签等组件和通过鼠标、键盘等的操作共同完成对软件的应用。当程序运行后,出现的图形窗口,称为程序的界面。界面上可能有输入框、输入区、 菜单项、按钮等各种图形组件。当用户通过键盘往输入区域输入内容后回车 或 用鼠标点击了一些可以被点击的组件以后,程序可以产生我们预期的合理响应或结果,称为事件处理。...

鷾 9299

JavaGUI——Java图形用户界面

GUI(GraphicalUserInterface,简称GUI,图形用户界面)是指采用图形方式显示的计算机操作用户界面,与早期计算机使用的命令行界面相比,图形界面对于用户来说在视觉上更易于接受。JavaGUI主要有两个核心库,分别是AWT(java.awtAbstractWindowsToolKit(抽象窗口工具包))和Swing(javax.swing。...

weixin_72753070的博客 1万+

第十篇:Java图形用户界面(GUI)

Swing是Java中一个用于构建图形用户界面的图形用户界面(GUI)工具包。它是Java的包的一部分,提供了大量的可重用组件,用于创建跨平台的图形界面。Swing库是Java中用于构建图形用户界面的重要工具,它提供了丰富的组件和布局管理器,使得创建用户友好的应用界面变得更为简单和灵活。事件处理机制则使得应用程序能够响应用户的操作,增强了用户的交互体验。Swing库概述:了解Swing库的历史和常用组件,如JFrameJButtonJTextField,是构建Java GUI应用的基础。布局管理。

HYP_Coder的博客 1926

Java GUI——Java图形用户界面

Java GUI——Java图形用户界面 1、Java GUI概述 1.1、GUI的前世今生 早期,电脑向用户提供的是单调、枯燥、纯字符状态的“命令行界面(CLI)”。如:Windows中的DOS窗口。后来,Apple公司率先在电脑的操作系统中实现了图形化的用户界面(Graphical User Interface,简称GUI),但由于Apple公司封闭的市场策略,与其它PC不兼容。这使得Apple公司错过了一次一统全球PC的好机会。后来,Microsoft公司推出了风靡全球的Windows操...

小仙儿 16万+

java图形用户界面概述_Java中图形用户界面概述

Java中图形用户界面概述,转型或者高薪就业,java工程师是不错的选择,而且java是目前乃至未来都主流的程序语言。Java中图形用户界面概述,一起来学习下java方面的知识吧。1.1、组件组件是Java图像用户界面的基本组成部分,是可视化图形显示在屏幕上与用户进行交流的对象。Java中包含许多的基本组件,如按钮、标签、滚动条、列表、单选/复选框等等。使用Java语言进行图形用户界面设计过程中,...

weixin_29924243的博客 1219

Java程序设计 图形用户界面 【七】事件处理

Java程序设计 图形用户界面 【七】事件处理 事件处理 事件和监听器 事件:表示一个对象发生状态变化 监听器:不断地监听事件的变化,并根据这些事件进行相应地处理 事件类 EventObject类 EventObject类的定义格式 public class EventObject extends Object implements Serializable{ public EventObject(Object source){ // 构造一个发生事件的对象 } public Object getS

小旺的博客 1237

Java 图形用户界面设计——GUI编程

GUI编程

weixin_57807561的博客 2924

Java图形用户界面设计AWT事件处理

AWT事件处理涉及Java AWT(抽象窗口工具包)中定义的事件及其处理机制。它允许开发者为图形用户界面组件(如按钮、文本框等)定义事件响应行为,如点击、键盘输入等。通过注册事件监听器并编写事件处理逻辑,AWT能够响应用户与界面元素的交互,实现动态和交互式的应用体验。前面的文章介绍了如何放置各种组件,从而得到了丰富多彩的图形界面,但这些界面还不能响应用户的任何操作。比如单击前面所有窗口右上角的“X”按钮,但窗口依然不会关闭。

qq_74013365的博客 1236
上一篇: C primer plus 一到五章
下一篇: 通过一个游戏编程熟悉事件处理
flyuniverse_shell
博客等级 码龄18年 119粉丝 121原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值