【兔年惊喜】Java语言程序设计实验八第八章Swing图形用户界面程序设计实验任务(一).doc

上传人:rrsccc 文档编号:8895406 上传时间:2021-01-23 格式:DOC 页数:9 大小:163.50KB
返回 下载 相关 举报
【兔年惊喜】Java语言程序设计实验八第八章Swing图形用户界面程序设计实验任务(一).doc_第1页
第1页 / 共9页
【兔年惊喜】Java语言程序设计实验八第八章Swing图形用户界面程序设计实验任务(一).doc_第2页
第2页 / 共9页
【兔年惊喜】Java语言程序设计实验八第八章Swing图形用户界面程序设计实验任务(一).doc_第3页
第3页 / 共9页
【兔年惊喜】Java语言程序设计实验八第八章Swing图形用户界面程序设计实验任务(一).doc_第4页
第4页 / 共9页
【兔年惊喜】Java语言程序设计实验八第八章Swing图形用户界面程序设计实验任务(一).doc_第5页
第5页 / 共9页
点击查看更多>>
资源描述

《【兔年惊喜】Java语言程序设计实验八第八章Swing图形用户界面程序设计实验任务(一).doc》由会员分享,可在线阅读,更多相关《【兔年惊喜】Java语言程序设计实验八第八章Swing图形用户界面程序设计实验任务(一).doc(9页珍藏版)》请在三一文库上搜索。

1、实验报告课程 Java语言程序设计 实验名称 第八章Swing图形用户界面程序设计实验任务(一) 第 页专业 班级 学号_ _ 姓名 实验日期: 2010 年 11 月 2 日 报告退发 (订正 、 重做) 一、实验目的 掌握框架、对话框、面板等容器的使用 掌握标签、按钮等组件的使用 初步了解java图形界面事件处理机制的原理二、实验环境1、微型计算机一台 2、DOS或WINDOWS操作系统,j2se开发包三、实验内容 1、 创建一个框架类实例对象app作为窗体2、 往窗体里添加三个按钮(b1、b2、b3)、两个标签(l1,l2)、三个文本输入框(t1、t2、t3),要求标签即包含一个图标也包

2、含文本,且文本覆盖在图标的上面。3、 可以在t1中输入文本信息,点击按钮b1后,标签l1的内容被设置为t1中的文本信息。4、 点击按钮t2时,弹出一个有模一般对话框,对话框中包含一个文本编辑框(dt)和两个按钮(db1、db2),db1为确认按钮,db2为取消按钮,当点击对话框db1确定按钮时,将文本编辑框dt中的文本信息返回,当点击取消或直接关闭对话框,返回值为:“点击取消或关闭”。将对话框的返回值在t2中显示。5、 点击按钮t3时,弹出一个选择输入对话框(标准对话框之一)。要求将该对话框的返回值在t3中显示。6、 设计一个计算器,要求见第八章习题6四、实验步骤和结果1.在Eclipse中新

3、建名字为test7的工程。2.新建swingtest.java类。3.实验内容1至5程序如下所示:/ swing1.javaimport java.awt.Container;import java.awt.FlowLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.awt.event.WindowEvent;import java.awt.event.WindowListener;import javax.swing.BoxLayout;import javax.s

4、wing.ImageIcon;import javax.swing.JButton;import javax.swing.JDialog;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JOptionPane;import javax.swing.JPanel;import javax.swing.JTextField;public class swingtest extends JFramepublic static void main(String args)final JFrame app=ne

5、w JFrame();/ 创建按钮、标签、文本输入框这三类面板JPanel jpbt=new JPanel();JPanel jplabel=new JPanel();JPanel jptextfield=new JPanel();/ 采用盒式布局管理器/ 按钮在窗体南部,标签在北部,文本输入框在中部jpbt.setLayout(new BoxLayout(jpbt, BoxLayout.X_AXIS);/组件在容器中沿水平方向排列JButton b1=new JButton(b1);JButton b2=new JButton(b2);final JButton b3=new JButton

6、(b3); jpbt.add(b1); jpbt.add(b2); jpbt.add(b3); jplabel.setLayout(new BoxLayout(jplabel, BoxLayout.X_AXIS);final JLabel l1=new JLabel(l1,new ImageIcon(photo/22.jpg),JLabel.LEFT);JLabel l2=new JLabel(l2,new ImageIcon(photo/33.jpg),JLabel.LEFT);l1.setHorizontalTextPosition(JLabel.CENTER);l2.setHorizon

7、talTextPosition(JLabel.CENTER);jplabel.add(l1);jplabel.add(l2);jptextfield.setLayout(new BoxLayout(jptextfield, BoxLayout.X_AXIS);final JTextField t1=new JTextField(t1);final JTextField t2=new JTextField(t2);final JTextField t3=new JTextField(t3); jptextfield.add(t1);jptextfield.add(t2);jptextfield.

8、add(t3);b1.addActionListener(new ActionListener() Overridepublic void actionPerformed(ActionEvent arg0)l1.setText(t1.getText(););b2.addActionListener(new ActionListener()Overridepublic void actionPerformed(ActionEvent arg0)final JDialog jd=new JDialog(app,对话框!,true);Container c=jd.getContentPane();c

9、.setLayout(new FlowLayout();final JTextField jt=new JTextField(10);JButton db1=new JButton(db1);db1.addActionListener(new ActionListener()Overridepublic void actionPerformed(ActionEvent arg0) t2.setText(jt.getText();jd.dispose(););JButton db2=new JButton(db2);db2.addActionListener(new ActionListener

10、() Overridepublic void actionPerformed(ActionEvent arg0) t2.setText(点击取消或关闭);jd.dispose(););/* /当点击直接关闭对话框,返回值为:“点击取消或关闭”。 * jd.addWindowListener(new WindowListener()Overridepublic void windowOpened(WindowEvent arg0) / TODO Auto-generated method stubOverridepublic void windowIconified(WindowEvent ar

11、g0) / TODO Auto-generated method stubOverridepublic void windowDeiconified(WindowEvent arg0) / TODO Auto-generated method stubOverridepublic void windowDeactivated(WindowEvent arg0) / TODO Auto-generated method stubOverridepublic void windowClosing(WindowEvent arg0) / TODO Auto-generated method stub

12、Overridepublic void windowClosed(WindowEvent arg0) / TODO Auto-generated method stubt2.setText(点击取消或关闭);Overridepublic void windowActivated(WindowEvent arg0) / TODO Auto-generated method stub);*/c.add(jt);c.add(db1);c.add(db2);jd.pack();jd.setLocationRelativeTo(app);jd.setDefaultCloseOperation(JDial

13、og.DISPOSE_ON_CLOSE);jd.setVisible(true);jd.setResizable(false););b3.addActionListener(new ActionListener() Overridepublic void actionPerformed(ActionEvent e) if(e.getSource()=b3)String s=很轻松,还可以,很困难;String x;x=(String)JOptionPane.showInputDialog(null, 学习Java轻松吗?,输入框,JOptionPane.QUESTION_MESSAGE,nul

14、l,s,s0);t3.setText(x););Container c=app.getContentPane(); /获取内容窗格app.setLayout(new BoxLayout(c, BoxLayout.Y_AXIS);/组件在容器中沿垂直方向排列c.add(jplabel);c.add(jptextfield);c.add(jpbt);app.setSize(400,150); app.setVisible(true); app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); app.setResizable(false); app.s

15、etLocationRelativeTo(null); / 居中4. 实验内容1至5程序结果运行如下: 5.计算器程序如下:/ SumTool.javaimport java.awt.Container;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.BoxLayout;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JPanel;import javax.swing.

16、JTextField;public class SumTool extends JFramepublic static void main(String args)JFrame jf=new JFrame(Sum);/ 创建文本输入框面板JPanel jptextfield=new JPanel();/ 采用盒式布局管理器jptextfield.setLayout(new BoxLayout(jptextfield, BoxLayout.X_AXIS);/组件在容器中沿水平方向排列final JTextField t1=new JTextField(7);JTextField t2=new J

17、TextField(+);final JTextField t3=new JTextField(7);final JTextField t5=new JTextField(7);t1.setEditable(true);t2.setEditable(false);t3.setEditable(true);t5.setEditable(true);JButton t4=new JButton(=);t4.addActionListener(new ActionListener() Overridepublic void actionPerformed(ActionEvent arg0) Stri

18、ng s1=t1.getText();String s3=t3.getText();int m1=Integer.valueOf(s1);int m3=Integer.valueOf(s3);int m5=m1+m3;String s5=String.valueOf(m5);t5.setText(s5););jptextfield.add(t1);jptextfield.add(t2);jptextfield.add(t3);jptextfield.add(t4);jptextfield.add(t5);Container c=jf.getContentPane(); /获取内容窗格jf.se

19、tLayout(new BoxLayout(c, BoxLayout.X_AXIS);/组件在容器中沿水平方向排列c.add(jptextfield);jf.setSize(400,60); jf.setVisible(true); jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); jf.setResizable(false); jf.setLocationRelativeTo(null); / 居中6.计算器结果如下:五、实验总结在这一章的AWT设计实验中,虽然Java设计界面用Swing设计会比较繁琐,但是对于了解Java底层设计,学习这章是必要的。在运用到各种控件编程,不仅可以使我们进行Swing设计,还使我们更好地了解Java的美妙,也让我们懂得了Eclipse工具的人性化服务平台所带来的乐趣。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1