java2实用教程实验代码及答案(8)

2019-01-07 12:31

} } else {

throw new NoRealRootException(\不是二次方程\ }

return root1; }

public double getRootTwo() throws NoRealRootException,NoSquareEquationException { if(a!=0)

{ double disk=b*b-4*a*c; if(disk>=0)

{ root2=(-b-Math.sqrt(disk))/(2*a); } else

{ throw new NoRealRootException(\没有实根\ } } else {

throw new NoRealRootException(\不是二次方程\ }

return root2; } }

class NoRealRootException extends Exception { String message;

NoRealRootException(String s) { message=s; }

public String getMessage() { return message; } }

class NoSquareEquationException extends Exception { String message;

NoSquareEquationException(String s) { message=s; }

public String getMessage() { return message; } }

EquationFrame.java

36

import java.awt.*; import java.awt.event.*;

public class EquationFrame extends Frame implements ActionListener { SquareEquation equation; TextField textA,textB,textC; TextArea showRoots; Button controlButton; public EquationFrame()

{ equation=new SquareEquation(); textA=new TextField(8); textB=new TextField(8); textC=new TextField(8); showRoots=new TextArea();

controlButton=new Button(\确定\ Panel pNorth=new Panel();

pNorth.add(new Label(\二次项系数:\ pNorth.add(textA);

pNorth.add(new Label(\一次项系数:\ pNorth.add(textB);

pNorth.add(new Label(\常数项系数:\ pNorth.add(textC);

pNorth.add(controlButton);

【代码1】 //当前窗口作为controlButton的ActionEvent事件的监视器 add(pNorth,BorderLayout.NORTH); add(showRoots,BorderLayout.CENTER); setBounds(100,100,630,160); setVisible(true); validate();

addWindowListener(new WindowAdapter()

{ public void windowClosing(WindowEvent e) { System.exit(0); } } ); }

public void actionPerformed(ActionEvent e) { try{

double a=Double.parseDouble(【代码2】); //textA调用方法获取其中的文本

double b=Double.parseDouble(【代码3】); //textB调用方法获取其中的文本

double c=Double.parseDouble(【代码4】); // textC调用方法获取其中的文本

equation.setA(a); equation.setB(b); equation.setC(c); textA.setText(\

37

textB.setText(\ textC.setText(\

showRoots.append(\根:\ showRoots.append(\根:\ }

catch(Exception ex)

{ showRoots.append(\ } } }

EquationMainClass.java

public class EquationMainClass

{ public static void main(String args[]) { EquationFrame frame=new EquationFrame(); } }

实验2 字体对话框

1.答案:

【代码1】: setModal(true);

【代码2】: setVisible(false);

【代码3】: setVisible(false); 【代码4】: new FontDialog(this); 【代码5】: setVisible(true);

【代码6】: dialog.setTitle(\字体对话框\

2.模板代码

FontFamilyNames.java

import java.awt.GraphicsEnvironment; public class FontFamilyNames { String fontName[];

public String [] getFontName()

{ GraphicsEnvironment ge=GraphicsEnvironment.getLocalGraphicsEnvironment(); fontName=ge.getAvailableFontFamilyNames(); return fontName; } }

FontDialog.java

import java.awt.event.*; import java.awt.*;

import javax.swing.JLabel;

38

public class FontDialog extends Dialog implements ItemListener,ActionListener { FontFamilyNames fontFamilyNames; int fontSize=38; String fontName; Choice fontNameList; JLabel label; Font font;

Button yes,cancel; static int YES=1,NO=0; int state=-1; FontDialog(Frame f) { super(f);

fontFamilyNames=new FontFamilyNames();

【代码1】 //对话框设置为有模式 yes=new Button(\ cancel=new Button(\ yes.addActionListener(this); cancel.addActionListener(this);

label=new JLabel(\奥运\ fontNameList=new Choice();

String name[]=fontFamilyNames.getFontName(); for(int k=0;k

fontNameList.addItemListener(this); add(fontNameList,BorderLayout.NORTH); add(label,BorderLayout.CENTER); Panel pSouth=new Panel(); pSouth.add(yes); pSouth.add(cancel);

add(pSouth,BorderLayout.SOUTH); setBounds(100,100,280,170);

addWindowListener(new WindowAdapter()

{ public void windowClosing(WindowEvent e) { state=NO;

setVisible(false); } } ); validate(); }

public void itemStateChanged(ItemEvent e)

{ fontName=(String)fontNameList.getSelectedItem(); font=new Font(fontName,Font.BOLD,fontSize);

39

label.setFont(font); label.repaint(); validate(); }

public void actionPerformed(ActionEvent e) { if(e.getSource()==yes) { state=YES;

【代码2】 //对话框设置为不可见 }

else if(e.getSource()==cancel) { state=NO;

【代码3】 //对话框设置为不可见 } }

public int getState() { return state; }

public Font getFont() { return font; } }

FrameHaveDialog.java

import java.awt.event.*; import java.awt.*;

import javax.swing.JTextArea;

public class FrameHaveDialog extends Frame implements ActionListener { JTextArea text; Button buttonFont; FrameHaveDialog()

{ buttonFont=new Button(\设置字体\

text=new JTextArea(\实用教程(第三版)\ buttonFont.addActionListener(this); add(buttonFont,BorderLayout.NORTH); add(text);

setBounds(60,60,300,300); setVisible(true); validate();

addWindowListener(new WindowAdapter()

{ public void windowClosing(WindowEvent e) { System.exit(0); } } ); } 40


java2实用教程实验代码及答案(8).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:2017年西师大版三年级数学上册第八单元测试卷及答案

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: