java 图形界面输入输出_2.3 基本输入输出编程:图形界面的输入与输出

本文介绍了如何在Java图形用户界面中进行输入和输出操作,重点讲解了使用TextField、Label和Button等控件进行交互,并通过添加ActionListener实现事件监听,详细阐述了构建图形界面和处理动作事件的代码实现过程。
摘要由CSDN通过智能技术生成

[音乐] 在现在的应用程序当中呢,除了控制台 界面以外呢,我们更多地使用这个图形用户界面 这个图形用户界面的输入输出呢我们经常可以使用这个文本框等等 这些控件呢来表示用户的交互。 像最 常用呢就是这个文本框来表示输入,比如说我们这个是求一个数的平方这样一个 程序。 那它用文本框来表示输入,那就 TextField 用标签 Label 来表示呢这个输出 然后用命令按钮,中间这个按钮一点就可以执行一个命令 这是最常见的。 也就是图形用户界面呢我们就是用这些 各种各样的这些对象,或者称为控件,起控制作用 的这些部件来完成输入和输出 那这样的程序怎么写呢?这样的程序呢就首先要建立自己的图形界面 这个创建自己的图形界面呢,我们可以 new 一个 这样的界面,最常见的就是这个 Frame,就是带框架的窗口 带一个窗口。 然后在这个窗口里头呢再放一些按钮啊,标签啊,文本框啊等等 所以这样我们要创建这样一个用户界面。 那创建,当然这样的用户界面最好的办法呢 就是用 extend,就是 extend,就是扩展系统的这个界面,然后呢 那把它根据我们的需要来加入相应的东西。 所以它的基本的写法呢就是 我们这样一个界面里头呢,add 添加 进去一些按钮啊、 标签等等,就 add,添加对象,这是一个 加完以后呢,对像按钮这样的我们还需要一个 要 addActionListener,就是动作的监听器 也就是说当这个按钮按了以后它执行什么动作 执行什么任务,所以就叫,也就是说当它发生了 点击这个以后,那我们要执行什么。 这里这个东西呢我们 称为处理这个点击事件,处理这个动作事件 那么这个动作事件呢基本的写法还有点特殊,所以它是用一个 new 一个这个 listener,new 一个这个 事件处理器。 那么这个事件处理器呢一般呢我们也定义成一个类 这个类呢它有个要求:它要写成 implements,就是实现了这个 监听功能。 因为我们要加进这个监听器,所以 它一定要实现这个监听功能,叫 implements,实现了这个监听功能 那怎么就表明它实现了监听功能呢?里面就一定要写一个,就是这个监听器啊 我们以后知道它就是一个接口。 这个接口呢它里面规定了 一个方法,叫 actionPerformed,你必须呢实现这个方法 才能表示它实现了这个接口。 所以它的写法呢有一点点 啰嗦,就是 adding 一个 listener,那这个 listener怎么写呢? 要定义一个类,这个类呢要实现了这个接口,里面的方法呢就是 actionPerformed 然后再做处理,比如说做计算啊等等 下面我们比较完整地看一下这个代码 请看这个代码 我们这样一个类里面呢写了一个 main 方法,这个 main 方法呢要构造一个 对象,就是 Frame 对象,就是带框架的一个窗口,我们简称为一个窗口也行 这个窗口呢它是继承了 Frame 继承了 Frame。 我们前面提到过呢你可以继承 Frame 但现在更多的习惯呢是继承 JFrame,因为 JFrame 呢 它是在 swing 的一个包里头所实现的。 当然 你用 Frame 呢也可以,因为这个Frame 是更早一点的,在 awt 这个包里头 现在这两个我们都在用,更习惯的是用 J 什么什么什么。 同样的下面也是一样的,我们这个 Frame 呢它就是一个窗口了,这个窗口呢 要写上我们自己的那些元素,比如说文本 这个字段对象,JTextField 这个 J 呢也可以不写,对吧,那我们刚才也提到。 然后按钮 有一个按钮,new 一个按钮。 然后标签,new 一个标签,里面带一些参数 这里好理解,带一些参数,比如说 10,比如说 10 的长度,然后呢这里表示它的 它的这个标签上的,或者按钮上的文本。 好了有这些 那我们怎么样把它糅合到一起呢?这是我们这里边就是 public AppFrame,就是这个,Frame 这个类呢它的构造方法 也就是我们怎么构造这个对象呢,这个方法,里头呢要写上一些关键语句 这个关键语句啊,setLayout 就是设定它的布局是流式布局。 所谓流式布局呢 表示我们加进来的东西呢它一个一个地接着放,放不下呢再放到第二排 所以 add。 那我们下面要把这几个,三个对象表示输入的 文本框,表示按钮 button,表示输出的标签,要把这三个 add 进去 我们可以直接写 add,但是呢现在更多的习惯,如果是 JFrame,更多的习惯呢是在内容 面板上面添加,所以这个是更好的习惯,你直接写 add 这个也可以 更好的习惯呢是 addContentPane.add,就是在内容面板上加 加进去我们这三个标签呢等等,这三个对象。 加进去以后呢 下面一步很重要,addActionListener,就是这个按钮让它起作用,按了以- 后起作用呢,你必须要 add 一个 ActionListener,我们刚才提到了。 然后后面呢还要设定 这个大小,然后呢还有一个很重要,就是我们为了它点那个 close 这个窗口上的 close 的这个X 能够关闭的话,要写一句 setDefaultCloseOperation 就是默认的关闭按钮呢是让它 DISPOSE_ ON_CLOSE,就是退出这个程序,退出这个程序 就是,然后后面有一个呢 setVisible,让它显示出来,所以 也就是说当我们 new 了这个对象呢,就把这些按钮都加进去 然后呢最后呢设定它的大小,并且显示 就是这样一个过程。 所以这个图形界面对象呢就是通过这样的方式 添加,然后呢再把它显示出来,添加对象,显示出来 这是一个图形界面。 然后下面我们就来着重解释 一下这个 addActionListener,就是添加一个 事件监听对象。 这个事件监听呢对象呢它必须实现了一个监听的功能,所以 implements ActionListener 这个监听功能呢是通过 actionpPerformed 这个方法来实现的,这个实现这种方法呢它的 书写格式呢也必须是这个样子的,然后里面带一个参数 Action Event,就是动作事件,就是这个事件详情 那这里面我们要写的呢就是,从那个文本框里面得到文本 然后呢再用 Double.parseDouble,把它解析成一个实数,转成实数,解析成实数 然后再计算,比如说这里是求平方。 最后一个呢是 setText 把它显示出来。 那我们运行一下这个程序,它就是这类效果 就是当我们输入一个数,然后求平方,它就显示出这个 setText,就是在这个标签上面显示出了。 所以通过这样的 输入和输出,通过控件来实现输入和输出 我们可以看到呢就是建立这个界面,以及呢添加这个事件,它的基本写法就是这样 当然这个写法呢还是有点啰嗦,写起来很不方便 到 Java8 以后它就可以简写了,特别是这个事件组类型,我们刚才说要创建一个 类,然后呢这个类还要实现一个接口,还要写 actionPerformed 这一大串太麻烦了,那么在 Java8 以后呢就可以使用一种特殊的写法 这个是一个 e,然后一个箭头儿,然后这里面写语句 这就方便多了。 它的意思呢,这个就,我们在 Java8 里面称为拉 Lambda 表达式 这个术语我们以后再说,但现在呢你知道这个写起来就这么写 按钮兼添加事件监听器,这个事件监听器怎么就表明它是一个事件 事件监听器呢?那我们就是说当这个事件发生的时候,一个箭头,所谓一个箭头呢就是一个减- 号一个大于号儿· 然后这个花括号里面写着语句,写着语句,这些 语句呢就是跟刚才一样: 得到文本,解析文本,然后计算,然后 显示文本。 所以这样一个过程呢就方便多了 哎大家根据自己的习惯,如果你愿意,你现在用的 Java8 呢我建议你用这样写。 如果你用的 为了跟以前的兼容,比如说 Java7、 Java6 兼容的话,那你还得像刚才那样书写

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值