/***************************************** write by tjm 用來展示畫圖的功能 *************************************************/ import java.awt.*; import javax.swing.*; import java.awt.event.*; public class demo26 extends JFrame //畫圖物件是JFrame的擴充 { Container c; public demo26() //建構元 { super("Mydraw:畫函式圖"); c=getContentPane(); setSize(640,480); setVisible(true); } public void paint(Graphics g) //真正的畫圖設定 { double y,x; int DY,DX; Color blue=Color.blue; //設定紅色 g.setColor(blue); g.drawLine(320,0,320,479); g.drawLine(0,240,639,240);//座標軸 g.drawString("函數圖形",10,100); Color red=Color.red; //設定紅色 g.setColor(red); /**算 y=x**/ for (DX=0;DX<=639;DX=DX+1) { x=(double)(DX-320)/50.0; y=Math.cos(x); DY=(int)(y*100.0+240); DY=479-DY; g.drawLine(DX,DY,DX,DY); //System.out.println(DX+" "+DY+" "+x+" "+y); } } public static void main(String args[]) //程式起點 { demo26 app=new demo26(); //畫圖 app.addWindowListener(new WindowAdapter(){ //匿名內部類別 public void windowClosing(WindowEvent e) { System.exit(0); } }); //處理視窗關閉要求 } }