实 验 报 告
( 2017 / 2018学年 第2学期)
|
课程名称 |
JAVA语言程序设计 |
|||||
|
实验名称 |
Java集成开发环境的安装与使用、 Java变量、表达式与控制结构 |
|||||
|
实验时间 |
2018 |
年 |
6 |
月 |
7 |
日 |
|
指导单位 |
计算机学院软件教学中心 |
|||||
|
指导教师 |
许棣华 |
|||||
|
学生姓名 |
王利国 |
班级学号 |
B160209 |
|
学院(系) |
电子与光学工程学院,微电子学院 |
专 业 |
微电子科学与工程 |
|
实验名称 |
方法、数组和类 |
指导教师 |
许棣华 |
|
|||||||
|
实验类型 |
上机 |
实验学时 |
2 |
实验时间 |
2017.6.7
|
||||||
|
一、 实验目的 1. 了解和掌握Java中GUI组件和界面化设计 2. 掌握Java中创建线程对象的方法 3. 熟悉控制线程状态的过程 |
|
二、实验环境(实验设备) 1. 每位学生配备计算机一台 2. 计算机需安装好JDK和Jcreator |
三、实验内容
1. 编写一个Applet,利用两个文本框对象input1和input2,接收用户从键盘输入的两个整型数。当用户单击“计算”按钮时,可进行算术计算,并输出运算结果;运算结果放在多行文本域JTextArea组件中。GUI界面参考教材198页9.6题。
package swing; import javax.swing.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; /** * @Author liguo * @Description * @Data 2018-06-04 20:06 */ public class Test { public static void main(String[] args) { // 创建 JFrame 实例 JFrame frame = new JFrame( "四则运算" ); frame.setSize( 350, 300 ); frame.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE ); /* 创建面板,这个类似于 HTML 的 div 标签 * 我们可以创建多个面板并在 JFrame 中指定位置 * 面板中我们可以添加文本字段,按钮及其他组件。 */ JPanel panel = new JPanel(); //添加面板 frame.add( panel ); /* * 调用用户定义的方法并添加组件到面板 */ placeComponents( panel ); // 设置界面可见 frame.setVisible( true ); } private static void placeComponents(JPanel panel) { panel.setLayout( null ); // 创建 JLabel JLabel firstLabel = new JLabel( "第一个数为" ); /* 这个方法定义了组件的位置。 * setBounds(x, y, width, height) * x 和 y 指定左上角的新位置,由 width 和 height 指定新的大小。 */ firstLabel.setBounds( 10, 20, 80, 25 ); panel.add( firstLabel ); //field JTextField firstNumber = new JTextField( 20 ); firstNumber.setBounds( 100, 20, 165, 25 ); panel.add( firstNumber ); // 输入的文本域 JLabel secondlabe2 = new JLabel( "第二个数字" ); secondlabe2.setBounds( 10, 50, 80, 25 ); panel.add( secondlabe2 ); /** * 第二个数字的输入 */ JTextField secondNumber = new JTextField( 20 ); secondNumber.setBounds( 100, 50, 165, 25 ); panel.add( secondNumber ); // 创建计算按钮 JButton loginButton = new JButton( "计算" ); loginButton.setBounds( 10, 80, 80, 25 ); panel.add( loginButton ); //添加页面输出 JTextArea area = new JTextArea(); area.setBounds( 100, 110, 165, 100 ); panel.add( area ); loginButton.addActionListener( new ActionListener() { @Override public void actionPerformed(ActionEvent e) { int a = Integer.parseInt( firstNumber.getText() ); int b = Integer.parseInt( secondNumber.getText() ); String str = "和为" + (a + b) + "\n差为" + (a - b) + "\n积为" + (a * b) + "\n商为" + (a / b); area.append( str ); } } ); } }