实验二 Java图形界面编程
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验二Java图形界面编程
一、实验目的
熟悉java运行环境,编程掌握Java Swing组件的图形界面编程。
二、实验环境
微机,软件MyEclipse,JDK1.5以上版本即可。
三、实验内容
1)Java Swing容器组件
2)Java Swing标准组件
3)Java Swing布局管理器
4)Java Swing事件监听器
5)JOptionPane类的使用
四、实验要求
(一)界面编程部分
1.编制程序,实现一个类似于windows计算器的计算器图形界面。如下图所示,只需要做出图形界面,不需要实现加减乘除计算过程。(满分为A/2)
操作提示:
jp.setLayout(new GridLayout(4,4));
JButton[] numberBtn = new JButton[16];;
String[] operatorValue = { "+", "-", "*", "/", "%", "=" };
for (int i = 0; i < 10; i++)
numberBtn[i] = new JButton("" + (char) ('0' + i));
jp.add(numberBtn[i]);
……
}
for (int i = 10; i < numberBtn.length; i++) {
numberBtn[i] = new JButton(operatorValue[i - 10]);
jp.add(numberBtn[i]);
……
}
add(BorderLayout.CENTER,jp);
……
(二)事件监听器编程部分
1. 改写本章案例GuessNumber.java,分别用内部类和匿名类作为事件监听者处理相应的事件。(满分为A)
2. 请在这个操作界面的基础上,继续完成下面的题目要求:(满分为A)
1)单击“插入”,“显示”,“查询”,“删除”四个按钮的时候,文本区里面显示“您单击了插入按钮,正在执行插入新记录操作……”。
2)单击“移除组件”按钮,将“插入”,“显示”,“查询”,“删除”四个按钮组件从JPanel中删除掉,并触发ContainerEvent事件,在文本区显示“您单击了移除按钮,从JPanel中移除了插入,显示,删除和查询等按钮……”。
3)单击“重新放置组件”按钮,将“插入”,“显示”,“查询”,“删除”四个按钮组件重新添加到JPanel中,并触发ContainerEvent事件,在文本区显示“您单击了重新放置按钮,向JPanel中重新添加了插入,显示,删除和查询等按钮……”。
4)单击窗口右上角的关闭按钮,可以将JFrame窗口关闭掉。
3. 编写一个计算三角形面积的小程序,要求用户输入三角形的三边长,然后将计算出的三角形面积显示在JFrame窗口中。(满分为A)
提示:
◆程序运行效果图
①正常运行的情况
②如果用户输入非数值型数据
③如果用户输入的数据无法构成三角形
◆提示之关于界面设计
可以使用两个JPanel,一个JPanel放置上图第一行的swing组件,一个JPanel 放置上图第二行的组件。
如其中一个JPanle可以这样设计:
……
p=new JPanel();
l=new JLabel("请输入三角形的三条边长:");
t1=new JTextField("0",5);
t2=new JTextField("0",5);
t3=new JTextField("0",5);
//将三个文本框都注册给焦点事件监听者
……
p.add(l);
p.add(t1);
p.add(t2);
p.add(t3);
add(p);
◆三角形的面积计算
Math.sqrt(q*(q-a)*(q-b)*(q-c)),q=a+b+c/2
在计算面积之前需要先判定用户的输入能否构成三角形
◆判定用户的输入数据格式是否合法可以使用焦点事件FocusEvent的监听
接口FocusListener
class HandleFocus implements FocusListener {// 内部类,焦点处理public void focusGained(FocusEvent e) {
}
public void focusLost(FocusEvent e) {
……
}
4. 编写一个简易计算器程序,可能的操作界面如下图所示:(满分为A)
或者是
提示:可以将窗口的布局为FlowLayout,设计四个按钮,分别命名为“加”,“”减,“乘”,“除”,另外还有三个文本框。单击相应的运算按钮,前两个文本框的数字做运算,在第三个文本框显示运算结果。要求能处理各种异常信息。
5. 编程实现下列计算器的计算过程。(3/2A)
五、实验问题和结论
1.在编程的过程中,你主要碰到过什么问题,是如何解决的?
2.完成实验二之后,对于Java图形界面方面的编程,你都总结了哪些经验和技巧?