java程序设计语言实验三.docx_第1页
java程序设计语言实验三.docx_第2页
java程序设计语言实验三.docx_第3页
java程序设计语言实验三.docx_第4页
java程序设计语言实验三.docx_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Java语言及网络编程实验报告姓 名: 学 号: 班 级: 指导老师: 中国矿业大学计算机科学与技术学院1、使用编写代码的方式,设计一个用户界面import java.awt.FlowLayout;import java.awt.event.*;import java.awt.Color;import javax.swing.*;public class Calculatorpublic static void main(String args)JFrame frame=new JFrame(计算器);frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);/退出响应FlowLayout flow=new FlowLayout();frame.setLayout(flow);/添加文本框和按钮,并把这些单元加入窗口JTextField textfield1=new JTextField(20);final JTextField textfield2=new JTextField(20);JButton button1=new JButton(+);JButton button2=new JButton(-);JButton button3=new JButton(*);JButton button4=new JButton(/);final JTextField textfield3=new JTextField(20);frame.add(textfield1);frame.add(textfield2);frame.add(button1);frame.add(button2);frame.add(button3);frame.add(button4);frame.add(textfield3);/设置按钮的颜色,并初始化窗口button1.setForeground(Color.RED);button2.setForeground(Color.BLUE);button3.setForeground(Color.MAGENTA);button4.setForeground(Color.green);frame.setVisible(true);frame.setBounds(300,200,240, 180);frame.setResizable(true);实验结果:2、使用编写代码的方式,设计一个含有菜单的用户界面import javax.swing.*;public class Course public static void main(String args)JFrame frame=new JFrame(选课系统);frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);JMenuBar menu=new JMenuBar();/建立一个菜单条JMenu menu1=new JMenu(文体类);/分别创建菜单JMenu menu2=new JMenu(计算机类);JMenu menu3=new JMenu(帮助);/菜单加入到菜单条中menu.add(menu1);menu.add(menu2);menu.add(menu3);/建立菜单的下拉菜单JMenuItem menu11=new JMenuItem(艺术欣赏);JMenuItem menu12=new JMenuItem(健美操);JMenuItem menu13=new JMenuItem(篮球);JMenuItem menu21=new JMenuItem(java语言);JMenuItem menu22=new JMenuItem(网络编程);JMenuItem menu31=new JMenuItem(选课方法);/把下拉菜单添加到菜单中menu1.add(menu11);menu1.add(menu12);menu1.add(menu13);menu2.add(menu21);menu2.add(menu22);menu3.add(menu31);frame.setJMenuBar(menu); /将建成的菜单条加入容器 frame.setBounds(300,200,250, 150); frame.setVisible(true); 实验结果:3、编写一个图形界面程序,运行后界面如下图,其中绘制矩形的方法是drawRect(40,50,120,80)import javax.swing.*;import java.awt.Graphics;public class Geometry extends JFramepublic void paint(Graphics g)g.drawRect(40, 50, 120, 80);g.drawOval(40,50,120,80);g.drawOval(40,70,60,40);g.drawOval(40, 80, 30, 20);public static void main(String args) / TODO Auto-generated method stubGeometry frame=new Geometry();frame.setTitle(几何图形);frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);frame.setBounds(300, 300, 240, 180);frame.show();实验结果:4、j 编写画出笑脸(如下图左)的程序。 k 编写画出哭脸(如下图右)的程序。 l 编写“变脸”程序: 将1和2结合, 再加入一个事件处理程序mouseUp(),使程序运行后出现一张笑脸,鼠标点击一次则变成哭脸,再点击一次又变成笑脸,依次轮换。import java.awt.Graphics;import java.awt.event.*;import javax.swing.*;public class ChangeFace extends JFrame class MymouseAdapter extends MouseAdapterint m=0;public void paint(Graphics g)/super。paint(g);if(m=0)g.drawOval(80,30,80,120);g.drawString(笑脸, 10, 10);g.drawArc(100, 60, 20, 10, 20, 140);g.drawArc(130, 60, 20, 10, 20, 140);g.drawArc(105, 110, 40, 20, 180, 180);g.drawString(空气质量好!, 120, 180);elseg.drawOval(80,30,80,120);g.drawString(哭脸, 10, 10);g.drawArc(100, 60, 20, 10, 200, 140);g.drawArc(130, 60, 20, 10, 200, 140);g.drawArc(105, 110, 40, 20, 0, 180);g.drawString(求降温!, 120, 180);public void mousePressed(MouseEvent event)if(event.getModifiers()=InputEvent.BUTTON1_MASK)m=(1+m)%2;repaint();public void update(Graphics g)super.update(g);paint(g);public static void main(String args) ChangeFace f=new ChangeFace();f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);f.setBounds(300, 300, 300, 240);f.addMouseListener(f.new MymouseAdapter();/f.update(null);f.setVisible(true);实验结果:5、用编写代码方式,编写一个“Press Me”程序,运行后初始界面如下图左,它能累计点击按钮的次数,下图右是点击3次后的结果。(窗口是FlowLayout布局, 宽170、高90, 文本框宽12) import java.awt.FlowLayout;import java.awt.event.*;import javax.swing.*;public class Press extends JFramepublic static void main(String args) / TODO Auto-generated method stubPress f=new Press();f.setTitle(Press Me);f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);FlowLayout flow=new FlowLayout(FlowLayout.CENTER);f.setLayout(flow); final JTextField text=new JTextField(您还没按我呢!);f.add(text);JButton button=new JButton(Press Me);f.add(button);f.setBounds(300, 200, 170, 90);f.setVisible(true);button.addActionListener(new ActionListener()int i=0;public void actionPerformed(ActionEvent event)i+;text.setText(您按了我+i+次!););实验结果: 6、设计一个“自助早餐”的图形界面事件处理程序,运行后界面如下图左;选择早点后界面如下图右;点击“确定”则退出。(提示:需要编写列表的itemStateChanged()事件处理方法) import javax.swing.*;import javax.swing.event.ListSelectionEvent;import javax.swing.event.ListSelectionListener;import java.awt.*;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;public class Self_servicepublic static void main(String args) new BreakFirst();class BreakFirst extends JFrame implements ActionListenerprivate JPanel jp;private JButton btnCom;private JList list;private JTextArea jta;private String ss=new String();private StringBuffer strbuf=new StringBuffer();BreakFirst()this.setSize(300,400);this.setTitle(自助早餐);this.setLocation(100, 200);jp=new JPanel();this.setContentPane(jp);JLabel lab1=new JLabel(请选择早餐:, SwingConstants.CENTER);JLabel lab2=new JLabel(您选择了:, SwingConstants.CENTER);String words=名称 单价,*,馒头 0.2元,花卷 0.3元,面包 0.5元,蛋糕 0.8元,豆浆 0.5元,牛奶 1.0元;list=new JList(words);list.addListSelectionListener(new ListSelectionListener()public void valueChanged(ListSelectionEvent e) strbuf=new StringBuffer();ss=;jta.setText(null);Object str=list.getSelectedValues();for(int i=0;istr.length;i+)strbuf.append(String)stri);strbuf.append(n);int num=list.getSelectedIndices();double price=0;for(int i=0;i4) s=s.substring(1,4);int in=Integer.parseInt(s);/将代表小数部分的字符串转化为整数if(in=0) /如果小数部分等于0,则去掉小数部分和小数点textfield3.setText(String.valueOf(Math.round(n3);else /否则直接打印出这个浮点数textfield3.setText(s3); );button2.addActionListener( /调用方法作为参数new ActionListener() public void actionPerformed(ActionEvent event) /行动执行处理方法String s1=textfield1.getText(); /获取输入的值double n1=Double.parseDouble(s1); /转换为double型String s2=textfield2.getText();double n2=Double.parseDouble(s2);double n3=n1-n2;String s3=String.valueOf(n3);int index=s3.indexOf(.);String s=s3.substring(index+1,s3.length();/获取小数部分子字符串if(s.length()4) s=s.substring(1,4);int in=Integer.parseInt(s);/将代表小数部分的字符串转化为整数if(in=0) /如果小数部分等于0,则去掉小数部分和小数点textfield3.setText(String.valueOf(Math.round(n3);else /否则直接打印出这个浮点数textfield3.setText(s3); );button3.addActionListener( /调用方法作为参数new ActionListener() public void actionPerformed(ActionEvent event) /行动执行处理方法String s1=textfield1.getText(); /获取输入的值double n1=Double.parseDouble(s1); /转换为double型String s2=textfield2.getText();double n2=Double.parseDouble(s2);double n3=n1*n2;String s3=String.valueOf(n3);int index=s3.indexOf(.);String s=s3.substring(index+1,s3.length();/获取小数部分子字符串if(s.length()4) s=s.substring(1,4);int in=Integer.parseInt(s);/将代表小数部分的字符串转化为整数if(in=0) /如果小数部分等于0,则去掉小数部分和小数点textfield3.setText(String.valueOf(Math.round(n3);else /否则直接打印出这个浮点数textfield3.setText(s3); );button4.addActionListener( /调用方法作为参数new ActionListener() public void actionPerformed(ActionEvent event) /行动执行处理方法String s1=textfield1.getText(); /获取输入的值double n1=Double.parseDouble(s1); /转换为double型String s2=textfield2.getText();double n2=Double.parseDouble(s2);double n3=n1/n2;String s3=String.valueOf(n3);int index=s3.indexOf(.);String s=s3.substring(index+1,s3.length();/获取小数部分子字符串if(s.length()4) s=s.substring(1,4);int in=Integer.parseInt(s);/将代表小数部分的字符串转化为整数if(in=0) /如果小数部分等于0,则去掉小数部分和小数点textfield3.setText(String.valueOf(Math.round(n3);else /否则直接打印出这个浮点数textfield3.setText(s3); );实验结果: 8、编写一个Applet,显示一幅图象并配上背景音乐。import java.applet.*;import javax.swing.*;import java.awt.Graphics;import java.awt.Image;import .MalformedURLException;import .URL;import javax.swing.JPanel;public class MusicApplet extends Applet Image i;AudioClip ac;public void init()/super.init(); /try ac=this.getAudioClip(getCodeBase(),1.au);/ catch (Exception e) / TODO Auto-generated catch block/e.printStackTrace(); i=getImage(getCodeBase(), 1.jpg);/this.setBackground(Color.red);public void paint(Graphics g)/g.setColor(Color.BLACK);super.paint(g);g.drawString(音乐, 20, 20);/g.drawImage(i,20,40,this);g.drawImage(i, 40, 50

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论