Panel

Panel


package Zadanie1;

import java.awt.Graphics2D;

import java.awt.event.ActionEvent;


import javax.swing.*;


import EditTextRead.Point2D;


public class Panel extends JPanel {

JTextField p1x;

JTextField p1y;

JTextField p2x;

JTextField p2y;

JTextField p3x;

JTextField p3y;

JTextField p4x;

JTextField p4y;

JTextField p5x;

JTextField p5y;

JTextField pole;

JTextField obwod;


JButton start;

JButton cancel;

JButton stop;

String p1xs,p1ys,p2ys,p2xs,p3xs,p3ys,p4xs,p4ys,p5xs,p5ys;

double x1,y1,x2,y2,x3,y3,x4,y4,x5,y5,area,l;

int x1i,y1i,x2i,y2i,x3i,y3i,x4i,y4i,x5i,y5i;

int draw;

double a,b,c,d,e,s;

public Panel(){

setLayout(null);

p1x=new JTextField(20);

p1y=new JTextField(20);

p2x=new JTextField(20);

p2y=new JTextField(20);

p3x=new JTextField(20);

p3y=new JTextField(20);

p4x=new JTextField(20);

p4y=new JTextField(20);

p5x=new JTextField(20);

p5y=new JTextField(20);

obwod=new JTextField(20);

pole=new JTextField(20);

start=new JButton("START");

cancel=new JButton("CANCEL");

stop=new JButton("STOP");

p1x.setBounds(100,100,80,20);

p1y.setBounds(200,100,80,20);

p2x.setBounds(500,100,80,20);

p2y.setBounds(600,100,80,20);

p3x.setBounds(500,600,80,20);

p3y.setBounds(600,100,80,20);

p4x.setBounds(100,400,80,20);

p4x.setBounds(200,400,80,20);

p5x.setBounds(300,600,80,20);

p5x.setBounds(400,600,80,20);

pole.setBounds(800,700,80,20);

obwod.setBounds(900,700,80,20);

start.setBounds(700,800,80,20);

cancel.setBounds(800,800,80,20);

stop.setBounds(900,800,80,20);

add(p1x);

add(p1y);

add(p2x);

add(p2y);

add(p3x);

add(p3y);

add(p4x);

add(p4y);

add(p5x);

add(p5y);

add(pole);

add(obwod);

add(start);

add(cancel);

add(stop);

ActionListener listStart=new Sluchacz();

start.addActionListener(listStart);

  ActionListener listCancel=new Sluchacz();

  cancel.addActionListener(listCancel);

ActionListener listStop= new Sluchacz();

stop.addActionListener(listStop);


}


class Sluchacz implements ActionListener

{


public void actionPerformed(ActionEvent e) 

{

 

if (e.getSource()==start)

{

 

 p1xs=p1x.getText();

 p1ys=p1y.getText();

 p2xs=p2x.getText();

 p2ys=p2y.getText();

 p3xs=p3x.getText();

 p3ys=p3y.getText();

 p4xs=p3y.getText();

 p4ys=p3y.getText();

 p5xs=p3y.getText();

 p5ys=p3y.getText();


 x1=Double.parseDouble(p1xs);

 y1=Double.parseDouble(p1ys);

 x2=Double.parseDouble(p2xs);

 y2=Double.parseDouble(p2ys);

 x3=Double.parseDouble(p3xs);

 y3=Double.parseDouble(p3ys);

 x4=Double.parseDouble(p4xs);

 y4=Double.parseDouble(p4ys);

 x5=Double.parseDouble(p5xs);

 y5=Double.parseDouble(p5ys);


 draw=1;

 repaint();


}


if(e.getSource()==cancel) {


 p1xs=p1x.getText();

 p1ys=p1y.getText();

 p2xs=p2x.getText();

 p2ys=p2y.getText();

 p3xs=p3x.getText();

 p3ys=p3y.getText();

 p4xs=p3y.getText();

 p4ys=p3y.getText();

 p5xs=p3y.getText();

 p5ys=p3y.getText();


 x1=Double.parseDouble(p1xs);

 y1=Double.parseDouble(p1ys);

 x2=Double.parseDouble(p2xs);

 y2=Double.parseDouble(p2ys);

 x3=Double.parseDouble(p3xs);

 y3=Double.parseDouble(p3ys);

 x4=Double.parseDouble(p4xs);

 y4=Double.parseDouble(p4ys);

 x5=Double.parseDouble(p5xs);

 y5=Double.parseDouble(p5ys);


 draw=-1;

 repaint();

 

 }

if(e.getSource()==stop) {


 p1xs=p1x.getText();

 p1ys=p1y.getText();

 p2xs=p2x.getText();

 p2ys=p2y.getText();

 p3xs=p3x.getText();

 p3ys=p3y.getText();

 p4xs=p3y.getText();

 p4ys=p3y.getText();

 p5xs=p3y.getText();

 p5ys=p3y.getText();


 x1=Double.parseDouble(p1xs);

 y1=Double.parseDouble(p1ys);

 x2=Double.parseDouble(p2xs);

 y2=Double.parseDouble(p2ys);

 x3=Double.parseDouble(p3xs);

 y3=Double.parseDouble(p3ys);

 x4=Double.parseDouble(p4xs);

 y4=Double.parseDouble(p4ys);

 x5=Double.parseDouble(p5xs);

 y5=Double.parseDouble(p5ys);


 draw=0;

 repaint();

 

 }

 

 public void paintComponent(Graphics g)

 {

  

 super.paintComponent(g);

 Graphics2D g2=(Graphics2D)g;

 BasicStroke dim=new BasicStroke(5f);

 g2.setStroke(dim);

 g2.setColor(Color.RED);


 if(draw==1)

 {

 

 x1i=(int)x1; y1i=(int)y1; x2i=(int)x2;

 y2i=(int)y2; x3i=(int)x3; y3i=(int)y3;

 x4i=(int)x4; y4i=(int)y4; x5i=(int)x5; y5i=(int)y5;

 g2.drawLine(x1i, y1i, x2i, y2i);

 g2.drawLine(x2i, y2i,x3i, y3i);

 g2.drawLine(x3i, y3i, x4i, y4i);

 g2.drawLine(x4i, y4i, x5i, y5i);

 g2.drawLine(x5i, y5i, x1i, y1i);


  

 Point2D p1=new Point2D(x1,y1);

 Point2D p2=new Point2D(x2,y2);

 Point2D p3=new Point2D(x3,y3);

 Point2D p4=new Point2D(x4,y4);

 Point2D p5=new Point2D(x5,y5);


 a=p1.dist(p1, p2);

 b=p2.dist(p2, p3);

 c=p3.dist(p3, p4);

 d=p4.dist(p4, p5);

 e=p5.dist(p5, p1);

  

 s=p1.pole(a,b,c,d,e);

 g2.drawString("Pole= "+ s,700,700);

 g2.drawString("a= "+a+" b= "+b+" c= "+c+"d= "+d+"e= "+e,700,750);

 l=a+b+c+d+e;

 obwod.setText("obw= "+l);

 draw=0;


 }


}


}


}

Report Page