北京信息科技大学Java语言知识程序设计

上传人:pu****.1 文档编号:464308566 上传时间:2023-10-20 格式:DOC 页数:9 大小:118KB
返回 下载 相关 举报
北京信息科技大学Java语言知识程序设计_第1页
第1页 / 共9页
北京信息科技大学Java语言知识程序设计_第2页
第2页 / 共9页
北京信息科技大学Java语言知识程序设计_第3页
第3页 / 共9页
北京信息科技大学Java语言知识程序设计_第4页
第4页 / 共9页
北京信息科技大学Java语言知识程序设计_第5页
第5页 / 共9页
点击查看更多>>
资源描述

《北京信息科技大学Java语言知识程序设计》由会员分享,可在线阅读,更多相关《北京信息科技大学Java语言知识程序设计(9页珍藏版)》请在金锄头文库上搜索。

1、【实验名称】实验 5 Java GUI【实验目的】1、学习和掌握Java常用的GU组件。2、学习和掌握Java常用的布局管理器。3、实习和掌握Java的事件驱动程序设计方法。4、能够实现简单的 Java GUI 。【实验步骤(解题过程)】1、第一步,Java GUI静态界面的设计和实现,包括:组件和组件的摆放(布局 管理器)。2、第二步,Java GUI动态事件处理的设计与实现,需要Java事件驱动模型。3、第三步,如果需要实体类支持,则按实验 2的步骤实现实体类并使用。【实验内容】1、(移动小球) 编写一个程序, 在面板上移动小球。 定义一个面板类来显示小球, 并提供想做、向右、向上和向下移

2、动小球的方法。说明:程序来源编程练习16.3( P456)。可以不考虑小球 移动到边界外的情况。【实验预习】1. 问题描述:创建一个界面,通过鼠标点击按钮实现小球的上下左右移动。2. 输入;鼠标点击按钮;处理:通过事件监听,实现圆的重画;输出;显示出 移动效果。3. 技术支持;需要用到事件监听,及圆的绘制即图形知识,布局管理器等。 【附编程代码】import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JPanel;import javax.swing.*;import java.awt.*;import j

3、ava.awt.event.*;public class MovingBall extends JFrame private static JButton bleft=new JButton(向左 );private static JButton bright=new JButton(向右 );private static JButton bup=new JButton( 向上 ); private static JButton bdown=new JButton( 向下 );private CirclePanel canvas = new CirclePanel();public Movin

4、gBall() JPanel panel = new JPanel(); /将按钮放入面板中panel.add(bleft);panel.add(bright); panel.add(bup);panel.add(bdown);this.add(canvas, BorderLayout.CENTER); /将含有圆的面板放在中央this.add(panel, BorderLayout.SOUTH); /将含有按钮的面板放在右边/ 创建按钮的监听器并注册到按钮bleft.addActionListener(new Listener();bright.addActionListener(new L

5、istener();bup.addActionListener(new Listener(); bdown.addActionListener(new Listener();/ 主方法public static void main(String args) JFrame frame = new MovingBall();frame.setTitle( 移动的小球 ); frame.setLocationRelativeTo(null); / Center the frame frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.

6、setSize(480, 300);frame.setVisible(true);/ 监听类class Listener implements ActionListener public void actionPerformed(ActionEvent e) System.out.println(new java.util.Date(e.getWhen();if (e.getSource() = bleft)canvas.left();else if (e.getSource() = bright)canvas.right();else if (e.getSource() =bup)canva

7、s.up();else if (e.getSource() = bdown)canvas.down();/ 含有一个圆的面板的类class CirclePanel extends JPanel private int x =0;private int y = 0;/ 左移这个圆public void left() x-;repaint();/ 右移这个圆public void right() x+;repaint();/ 上移这个圆public void up() y-;repa in t();/下移这个圆public void dow n() y+;repai nt();/重画这个圆prot

8、ected void pai ntComp onen Graphics g) super.pa in tComp onen t(g);g.drawOval(getWidth()/2+x,getHeight()/2+y,10, 10);【实验过程及运行结果】在实验中遇到的问题是不会画圆,经过查书知道可以使用drawOval方法画圆1备1够动的小球口 回O向左向右向上向下111inn iiI 2、(创建一个简单的计算器)编写一个程序完成加、减、乘、除操作。图5简单的计算器说明:程序来源编程练习16.4( P456)。文本框组件javax. swing.JTextField, 请参见教材17.6小节

9、(P473),或者Java API文档。字符串与数值之间的转换, 请参见2.18.1小节(P44)和9.2.10小节(P247),或者使用字符串格式化方法 9.2.11( P248)。【实验预习】1. 问题描述:创建一个界面,利用鼠标点击加减乘除按钮,实现两个数之间的 运算。2. 输入:在文本域中输入两个数字,并用鼠标点击按钮。处理:创建一个监听 类,对按钮进行监听,计算两个数字之间的运算。输出:在结果文本域中显示运算结果3. 技术要求: 需要使用布局管理器, 事件监听, 及字符串与数字之间的转换等。 【附编程代码】import java.awt.FlowLayout;import java.

10、awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JTextField;public class easyCalculation extends JFrameprivate JButton Add=new JButton(加 );private JButton Subtract=new JButton(减 );private JBut

11、ton Multiply=new JButton(乘 );private JButton Divide=new JButton(除);private JTextField one=new JTextField(5);private JTextField second=new JTextField(5);private JTextField all=new JTextField(10);private JLabel a=new JLabel( 第一个数 );private JLabel b=new JLabel( 第二个数 );private JLabel c=new JLabel( 结果 );

12、public easyCalculation()FlowLayout panel=new FlowLayout(FlowLayout.CENTER, 20, 50); setLayout(panel);add(a);add(one);add(b); add(second);add(c); add(all);add(Add);add(Subtract);add(Multiply); add(Divide);Add.addActionListener(new Listener(); Subtract.addActionListener(new Listener(); Multiply.addAct

13、ionListener(new Listener(); Divide.addActionListener(new Listener();/ 主方法public static void main(String args) easyCalculation frame = new easyCalculation();frame.setTitle( 简单的计算器 );frame.setLocationRelativeTo(null); / Center the frame frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setSi

14、ze(500, 200);frame.setVisible(true);class Listener implements ActionListener public void actionPerformed(ActionEvent e) System.out.println(new java.util.Date(e.getWhen();if (e.getSource() = Add)double a1=Double.parseDouble(one.getText(); double b1=Double.parseDouble(second.getText(); all.setText(Str

15、ing.format(%.2f,a1+b1);else if (e.getSource() = Subtract)double a1=Double.parseDouble(one.getText(); double b1=Double.parseDouble(second.getText(); all.setText(String.format(%.2f,a1-b1);else if (e.getSource() = Multiply)double a1=Double.parseDouble(one.getText(); double b1=Double.parseDouble(second.getText(); all.setText(String.

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号