다각형 그리는 코드를 짜봤는데요 잘않되서 그러는데 좀가르쳐주세요
사랑
마우스로 클릭 한번하고 다른곳에 클릭하면 그곳에 선이 하나 생기고 또다른곳에 클릭하면 이어서 생기게 하는 Polylline 를 하려고 합니다.
우선 제가 짠거는 polygon으로 했는데 어쨋든 잘 모르겠어요 원래 직선 긋는 거를 보고 이렇게도 해보고 저렇게도 해보고 했는데
직선으로는
드래그해서 긋는것도 되고 클릭 해서 하는것도 되는데
다각형은 잘 않되요
사각형이나 원 같은것도 드래그로 되구요 낙서장처럼 마구 그리는것도 되는데 다각형은 어렵더군요
배열로 받아서 그런가 하여튼 잘않되서요 도움좀 주세요 그리고 절대 학교 숙제 아닙니다.
물론 자바를 이번학기에 배우긴하는데 아직 시작도 않했거든요.. 이건 개인적인 공부랍니다.
밑에 소스처럼 하면 절대 할수 없는건가요?
import java.applet.*;
import java.awt.*;
import java.awt.event.*;
public class Rectangles extends Applet implements MouseListener, MouseMotionListener {
public static final long serialVersionUID=1L;
private int p1,p2,p3,p4;
private int clickNumber;
public void init(){
addMouseListener(this);
addMouseMotionListener(this);
}
public void mouseClicked(MouseEvent e){}
public void mouseEntered(MouseEvent e) {}
public void mouseExited(MouseEvent e) {}
public void mousePressed(MouseEvent e) {
p1=e.getX();
p2=e.getY();
clickNumber=e.getClickCount();
repaint();
}
public void mouseReleased(MouseEvent e) {
//p3=e.getX();
//p4=e.getY();
//repaint();
}
public void mouseDragged(MouseEvent me) {}
public void mouseMoved(MouseEvent e) {
//p3=e.getX();
//p4=e.getY();
repaint();
}
public void paint(Graphics g) {
int x[]= new int[] {p1};
int y[]= new int[] {p2};
g.drawPolygon(x,y,clickNumber);
//g.drawLine(p1,p2,p3,p4);
}
}