ImageVerifierCode 换一换
格式:DOCX , 页数:48 ,大小:374.82KB ,
资源ID:9584022      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/9584022.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(Java语言程序设计郑莉第九章课后习题答案.docx)为本站会员(b****8)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

Java语言程序设计郑莉第九章课后习题答案.docx

1、Java语言程序设计郑莉第九章课后习题答案Java语言程序设计第九章课后习题答案1.编写一个程序,该程序绘制一个59的网络,使用drawLine方法。/NetWork类import java.awt.Graphics;import javax.swing.JFrame;public class NetWork extends JFrame public NetWork() / 设置窗体大小 this.setSize(130, 130); /设置窗体大小不可改变 this.setResizable(false); / 设置默认关闭方式,关闭窗体的同时结束程序 this.setDefaultClo

2、seOperation(JFrame.EXIT_ON_CLOSE); / 将窗体显示出来 this.setVisible(true); /横纵格之间都间隔10像素,起点在(20,40) public void paint(Graphics g) /绘制横向线 for(int i=0;i=5;i+) g.drawLine(20, 40+i*10, 110, 40+i*10); /绘制纵向线 for(int i=0;i=9;i+) g.drawLine(20+i*10, 40, 20+i*10, 90); /test9_1类public class test9_1 public static vo

3、id main(String args) new NetWork(); 运行结果:2.编写一个程序,该程序以不同的颜色随机产生三角形,每个三角形用不同的颜色进行填充。/Triangle类import java.awt.Color;import java.awt.Graphics;import java.util.Random;import javax.swing.JFrame;public class Triangle extends JFrame Random rnd = new Random(); /这里定义4个三角形 int x=new int43; int y=new int43; i

4、nt color=new int43; public Triangle() for(int i=0;i4;i+) for(int j=0;j3;j+) colorij=rnd.nextInt(255); xij=rnd.nextInt(i*100+100); yij=rnd.nextInt(i*100+100)+50;/加50像素是为了避免顶到窗体上沿 /窗体标题 this.setTitle(随机三角形); /窗体大小 this.setSize(500,500); /窗体大小不可变 this.setResizable(false); /关闭窗体的同时结束程序 this.setDefaultCl

5、oseOperation(JFrame.EXIT_ON_CLOSE); /显示窗体 this.setVisible(true); public void paint(Graphics g) for(int i=0;i4;i+) g.setColor(new Color(colori0,colori1,colori2); g.fillPolygon(xi, yi, 3); /test9_2public class test9_2 public static void main(String args) new Triangle(); 运行结果:3.编写一个Applet,该程序请求用户输入圆的半径

6、,然后显示该圆的直径、周长和面积。/test9_3import javax.swing.*;import java.awt.*;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;public class test9_3 extends JApplet /声明5个标签 private JLabel jLabel1; private JLabel jLabel2; private JLabel jLabel3; private JLabel jLabel4; private JLabel jLabel5;

7、/1个单行文本 private JTextField textOfRadius; /2个按钮 private JButton jButton1; private JButton jButton2; /初始化 public void init() try java.awt.EventQueue.invokeAndWait(new Runnable() public void run() initComponents(); ); catch (Exception ex) ex.printStackTrace(); private void initComponents() /声明8个组件 jLab

8、el1 = new JLabel(输入圆的半径:, SwingConstants.CENTER); jLabel2 = new JLabel(圆的周长:, SwingConstants.CENTER); jLabel3 = new JLabel(, SwingConstants.CENTER); jLabel4 = new JLabel(圆的面积:, SwingConstants.CENTER); jLabel5 = new JLabel(, SwingConstants.CENTER); textOfRadius = new JTextField(半径); jButton1 = new JB

9、utton(计算); jButton2 = new JButton(退出); /按钮添加监听器 jButton1.addActionListener(new ActionListener() public void actionPerformed(ActionEvent evt) jButton1ActionPerformed(evt); ); /按钮添加监听器 jButton2.addActionListener(new ActionListener() public void actionPerformed(ActionEvent evt) jButton2ActionPerformed(

10、evt); ); /声明定义内容面板,并且设置其布局格式为:4行2列格子 Container c = getContentPane(); c.setLayout(new GridLayout(4, 2); /将8个组件加入到内容面板 c.add(jLabel1); c.add(textOfRadius); c.add(jLabel2); c.add(jLabel3); c.add(jLabel4); c.add(jLabel5); c.add(jButton1); c.add(jButton2); / 求周长方法 private String Round(double a) double pe

11、rimeter = a * 2 * 3.14; String s = new String(String.valueOf(perimeter); return s; / 求面积方法 private String Area(double a) double area = a * a * 3.14; String s = new String(String.valueOf(area); return s; /点击“计算”按钮jButton1触发的方法 private void jButton1ActionPerformed(ActionEvent evt) /捕获单文本输入非数字的异常 try S

12、tring s = textOfRadius.getText();/获得单文本字符 double a = Double.valueOf(s).floatValue();/字符转化为双精度 jLabel3.setText(Round(a);/标签内容为周长 jLabel5.setText(Area(a);/标签内容为面积 catch (NumberFormatException r) /单文本为非数字弹出提示“输入错误”框 JOptionPane.showMessageDialog(this, 请输入数字类型, 输入错误,JOptionPane.WARNING_MESSAGE); textOfR

13、adius.setText(); /点击“退出”按钮jButton2触发的方法 public void jButton2ActionPerformed(ActionEvent evt) System.exit(0); 运行结果:编译text9_3.java产生字节码文件test9_3.class,接下来需要编写一个HTML文件text9_3.html来嵌入text9_3.class,代码如下:将test9_3.html文件和test9_3.class文件放在同一个目录下,在浏览器中打开这个test9_3.html文件,实现的效果如下:4.编写一个Applet,向其输入五个数,然后以条形图(ba

14、r graph)的形式来表示这些数。5.编写一个绘制圆形的程序,当鼠标在绘制区域中单击时,该正方形的左上角顶点应准确的跟随鼠标光标移动,重绘该圆形。/MyJFrame类import java.awt.Graphics;import java.awt.event.MouseEvent;import java.awt.event.MouseListener;import javax.swing.JFrame;public class MyJFrame extends JFrame implements MouseListener int x=50; int y=50; int radius=50;

15、 public MyJFrame() this.setTitle(绘制圆形); this.setSize(200,200); this.setResizable(false); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); this.addMouseListener(this); this.setVisible(true); public void paint(Graphics g) g.drawOval(x, y, radius, radius); public void mouseClicked(MouseEvent e) / T

16、ODO Auto-generated method stub this.x=e.getX(); this.y=e.getY(); this.repaint(); System.out.println(x: + e.getX() + ny: + e.getY(); public void mouseEntered(MouseEvent e) / TODO Auto-generated method stub public void mouseExited(MouseEvent e) / TODO Auto-generated method stub public void mousePresse

17、d(MouseEvent e) / TODO Auto-generated method stub public void mouseReleased(MouseEvent e) / TODO Auto-generated method stub /test9_5public class test9_3 public static void main(String args) new MyJFrame(); 运行结果:6.编写一个“猜数”程序:该程序随机在1到100的范围内选择一个供用户猜测的整数,然后改程序显示提示信息,要求用户输入一个1到100之间的整数,根据输入偏大、偏小、正确,程序将显

18、示不同的图标。/GuessNumber类import java.awt.GridLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.util.Random;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JOptionPane;import javax.swing.JTextField;import javax.swing

19、.SwingConstants;public class GuessNumber extends JFrame implements ActionListener int numberOfRandom;/ 游戏程序随机数 int numberOfUser;/ 玩家输入整数 JLabel label1;/ 标签1:“输入一个1到100之间的整数” JLabel label2;/ 标签2:“提示” JLabel label3;/ 标签3:提示的内容(偏大、偏小、正确) JButton buttonOfSure;/ 确定按钮 JButton buttonOfExit;/ 退出按钮 JTextFiel

20、d jTextField;/ 猜数输入单行文本框 public void init() / 窗体的定义 this.setTitle(这是一个猜数游戏); this.setSize(400, 120); this.setResizable(false); this.setLayout(new GridLayout(3, 2); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); / 随机数 Random random = new Random(); numberOfRandom = random.nextInt(100); / 各组件的定义

21、label1 = new JLabel(请输入一个1到100之间的整数:); label2 = new JLabel(提示:, SwingConstants.CENTER); label3 = new JLabel(猜猜看); buttonOfSure = new JButton(确定); this.getRootPane().setDefaultButton(buttonOfSure);/ 默认用户按下回车键触发“确定”按钮 buttonOfSure.addActionListener(this); buttonOfExit = new JButton(退出); buttonOfExit.a

22、ddActionListener(this); jTextField = new JTextField(输入); / 窗体加入各组件 this.add(label1); this.add(jTextField); this.add(label2); this.add(label3); this.add(buttonOfSure); this.add(buttonOfExit); / 显示窗体 this.setVisible(true); System.out.println(numberOfRandom);/ 偷偷看看随机数,哈哈 / 事件处理 public void eventHandle(

23、) /捕获非整型输入异常 try numberOfUser = Integer.parseInt(jTextField.getText();/获得用户输入数 if (numberOfUser 100) JOptionPane.showMessageDialog(this, 请输入1到100之间的整数); else if (numberOfUser numberOfRandom) label3.setText(偏大); jTextField.requestFocus();/清空文本框并使重新获得焦点 if (numberOfUser numberOfRandom) label3.setText(

24、偏小); jTextField.requestFocus(); if (numberOfUser = numberOfRandom) label3.setText(恭喜你,答对了。); jTextField.requestFocus(); catch (NumberFormatException e) JOptionPane.showMessageDialog(this, 请输入整数, 输入错误, JOptionPane.WARNING_MESSAGE); jTextField.requestFocus(); /按钮触发选择 public void actionPerformed(Action

25、Event e) if (e.getActionCommand() = 确定) this.eventHandle(); if (e.getActionCommand() = 退出) System.exit(0); public static void main(String args) new GuessNumber().init(); 运行结果:7.练习使用JscrollPane。使用BorderLayout将JFrame布局分为左右两块;左边又使用GridLayout,包含三个按钮,右边在JLabel里显示一幅图画,按钮控制JLabel是否显示滚动条。/test9_7import java

26、.awt.BorderLayout;import java.awt.Button;import java.awt.Container;import java.awt.GridLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.ImageIcon;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JOptionPane;import javax.swing.JPan

27、el;import javax.swing.JScrollPane;import javax.swing.ScrollPaneConstants;public class test9_7 extends JFrame implements ActionListener private JPanel jPanel;/左边panel框 private Button button1; private Button button2; private Button button3; private JScrollPane jscrollPane;/右边滚动框 private JLabel label;/滚动框中的标签 public ImageIcon picture = null;/标签中的图标 public boolean whetherCroll = true;/用于切换滚动条的显示 public void init() JFrame jFrame = new JFrame(练习使用JscrollPane); Container pane = jFrame.getContentPane(); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); / 定义左边镶板JPanel框和三个按钮 jPanel = new JPanel(n

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1