在图形界面中绘制二维的坐标系统,其中x轴位于绘图区正中,y轴位于绘图区的最左边。实现以下基本功能:
(1)设计界面接受用户输入的实验数据,同时绘制数据点,每个数据点用一个小圆号表示。最后,用直线或曲线拟合这些数据点。
(2)编写程序跟踪用户的鼠标,并时刻把鼠标位置显示出来。
(3)编写图形界面的Java程序响应鼠标单击和键盘事件,从鼠标单击的位置开始横向显示用户键入的字符,若鼠标双击则清空屏幕。
1.首先要在图形界面中绘制一个二维坐标系,这里给两种方法,其实原理还是一样的。
代码一:
import java.awt.*;
import javax.swing.*;
public class DrawFigurs extends JFrame{
JPanel pan=new Mypan();
public DrawFigurs()
{
add(pan);
pan.setBounds(0, 0, 640, 480);
this.setLayout(null);
this.setVisible(true);
this.setSize(400, 400);
this.setDefaultCloseOperation(EXIT_ON_CLOSE); // 关闭时会调用
this.setVisible(true);
}
static class Mypan extends JPanel{
public void paintComponent(Graphics g)
{
super.paintComponents(g);
g.setColor(Color.RED); 坐标轴颜色
g.translate(0, 200);//原点位置
g.drawLine(0,0, 640, 0);//画出x轴
g.drawLine(0, 240, 0, -240);//画出Y轴
}
}
public static void main(String args[])
{
DrawFigurs dd=new DrawFigurs();
}
}
运行如图:
注:画X,Y轴时可能不懂,我相信看完下面代码你就懂了!
drawLine(int x1, int y1, int x2, int y2)
在此图形上下文的坐标系中,使用当前颜色在点 (x1, y1) 和 (x2, y2) 之间画一条线。
drawRect(int x, int y, int width, int height)
绘制指定矩形的边框。
JAVA是以屏幕左上角为原点(0,0)往右X增加,往下Y增加
g.drawLine(10,10,10,50);就是在(10,10)、(10,50)之间画一条直线,也就是一条40像素长的垂直直线
g.drawRect(100,100,150,150);以(100,100)坐标划一个宽150,高150的矩形
还有第二种方法。
代码二:
import java.awt.*;
//import java.awt.event.*;
import java.applet.*;
public class completeAxis extends Applet {
/**
*
*/
private static final long serialVersionUID = 1L;
public void paint(Graphics g){
g.setColor(Color.blue);
g.draw