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

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

实验报告课程Java语言程序设计实验名称第八章Swing图形用户界面程序设计实验任务(一)第页专业班级学号____姓名实验日期:2010年11月2日报告退发(订正、重做)一、实验目的•掌握框架、对话框、面板等容器的使用•掌握标签、按钮等组件的使用•初步了解java图形界面事件处理机制的原理二、实验环境1、微型计算机一台2、DOS或WINDOWS操作系统,j2se开发包三、实验内容1、创建一个框架类实例对象app作为窗体2、往窗体里添加三个按钮(b1、b2、b3)、两个标签(l1,l2)、三个文本输入框(t1、t2、t3),要求标签即包含一个图标也包含文本,且文本覆盖在图标的上面。3、可以在t1中输入文本信息,点击按钮b1后,标签l1的内容被设置为t1中的文本信息。4、点击按钮t2时,弹出一个有模一般对话框,对话框中包含一个文本编辑框(dt)和两个按钮(db1、db2),db1为确认按钮,db2为取消按钮,当点击对话框db1确定按钮时,将文本编辑框dt中的文本信息返回,当点击取消或直接关闭对话框,返回值为:“点击取消或关闭”。将对话框的返回值在t2中显示。5、点击按钮t3时,弹出一个选择输入对话框(标准对话框之一)。要求将该对话框的返回值在t3中显示。6、设计一个计算器,要求见第八章习题6四、实验步骤和结果1.在Eclipse中新建名字为test7的工程。2.新建swingtest.java类。3.实验内容1至5程序如下所示://swing1.javaimportjava.awt.Container;importjava.awt.FlowLayout;importjava.awt.event.ActionEvent;importjava.awt.event.ActionListener;importjava.awt.event.WindowEvent;importjava.awt.event.WindowListener;importjavax.swing.BoxLayout;importjavax.swing.ImageIcon;importjavax.swing.JButton;importjavax.swing.JDialog;importjavax.swing.JFrame;importjavax.swing.JLabel;importjavax.swing.JOptionPane;importjavax.swing.JPanel;importjavax.swing.JTextField;publicclassswingtestextendsJFrame{publicstaticvoidmain(String[]args){finalJFrameapp=newJFrame();//创建按钮、标签、文本输入框这三类面板JPaneljpbt=newJPanel();JPaneljplabel=newJPanel();JPaneljptextfield=newJPanel();//采用盒式布局管理器//按钮在窗体南部,标签在北部,文本输入框在中部jpbt.setLayout(newBoxLayout(jpbt,BoxLayout.X_AXIS));//组件在容器中沿水平方向排列JButtonb1=newJButton(b1);JButtonb2=newJButton(b2);finalJButtonb3=newJButton(b3);jpbt.add(b1);jpbt.add(b2);jpbt.add(b3);jplabel.setLayout(newBoxLayout(jplabel,BoxLayout.X_AXIS));finalJLabell1=newJLabel(l1,newImageIcon(photo/22.jpg),JLabel.LEFT);JLabell2=newJLabel(l2,newImageIcon(photo/33.jpg),JLabel.LEFT);l1.setHorizontalTextPosition(JLabel.CENTER);l2.setHorizontalTextPosition(JLabel.CENTER);jplabel.add(l1);jplabel.add(l2);jptextfield.setLayout(newBoxLayout(jptextfield,BoxLayout.X_AXIS));finalJTextFieldt1=newJTextField(t1);finalJTextFieldt2=newJTextField(t2);finalJTextFieldt3=newJTextField(t3);jptextfield.add(t1);jptextfield.add(t2);jptextfield.add(t3);b1.addActionListener(newActionListener(){@OverridepublicvoidactionPerformed(ActionEventarg0){l1.setText(t1.getText());}});b2.addActionListener(newActionListener(){@OverridepublicvoidactionPerformed(ActionEventarg0){finalJDialogjd=newJDialog(app,对话框!,true);Containerc=jd.getContentPane();c.setLayout(newFlowLayout());finalJTextFieldjt=newJTextField(10);JButtondb1=newJButton(db1);db1.addActionListener(newActionListener(){@OverridepublicvoidactionPerformed(ActionEventarg0){t2.setText(jt.getText());jd.dispose();}});JButtondb2=newJButton(db2);db2.addActionListener(newActionListener(){@OverridepublicvoidactionPerformed(ActionEventarg0){t2.setText(点击取消或关闭);jd.dispose();}});/*//当点击直接关闭对话框,返回值为:“点击取消或关闭”。*jd.addWindowListener(newWindowListener(){@OverridepublicvoidwindowOpened(WindowEventarg0){//TODOAuto-generatedmethodstub}@OverridepublicvoidwindowIconified(WindowEventarg0){//TODOAuto-generatedmethodstub}@OverridepublicvoidwindowDeiconified(WindowEventarg0){//TODOAuto-generatedmethodstub}@OverridepublicvoidwindowDeactivated(WindowEventarg0){//TODOAuto-generatedmethodstub}@OverridepublicvoidwindowClosing(WindowEventarg0){//TODOAuto-generatedmethodstub}@OverridepublicvoidwindowClosed(WindowEventarg0){//TODOAuto-generatedmethodstubt2.setText(点击取消或关闭);}@OverridepublicvoidwindowActivated(WindowEventarg0){//TODOAuto-generatedmethodstub}});*/c.add(jt);c.add(db1);c.add(db2);jd.pack();jd.setLocationRelativeTo(app);jd.setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE);jd.setVisible(true);jd.setResizable(false);}});b3.addActionListener(newActionListener(){@OverridepublicvoidactionPerformed(ActionEvente){if(e.getSource()==b3){String[]s={很轻松,还可以,很困难};Stringx;x=(String)JOptionPane.showInputDialog(null,学习Java轻松吗?,输入框,JOptionPane.QUESTION_MESSAGE,null,s,s[0]);t3.setText(x);}}});Containerc=app.getContentPane();//获取内容窗格app.setLayout(newBoxLayout(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.setLocationRelativeTo(null);//居中}}4.实验内容1至5程序结果运行如下:5.计算器程序如下://SumTool.javaimportjava.awt.Container;importjava.awt.event.ActionEvent;importjava.awt.event.ActionListener;importjavax.swing.BoxLayout;importjavax.swing.JButton;importjavax.swing.JFrame;importjavax.swing.JPanel;importjavax.swing.JTextField;publicclassSumToolextendsJFrame{publicstaticvoidmain(String[]args){JFramejf=newJFrame(Sum);//创建文本输入框面板JPaneljptextfield=newJPanel();//采用盒式布局管理器jptextfield.setLayout(newBoxLayout(jptextfield,BoxLayout.X_AXIS));//组件在容器中沿水平方向排列finalJTextFieldt1=newJTextField(7);JTextFieldt2=newJTextField(+);finalJTextFieldt3=newJTextField(7);finalJTextFieldt5=newJTextField(7);t1.setEditable(true);t2.setEditable(false);t3.setEditable(true);t5.setEditable(true);JButtont4=newJButton(=);t4.addActionListener(newActionListener(){@OverridepublicvoidactionPerformed(ActionEventarg0){Strings1=t1.getText();Strings3=t3.getText();intm1=Integer.va

1 / 9
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功