witam
import javax.swing.*;
public class Paint
{
public static void main(String args[])
{
ProsteOkno okno = new ProsteOkno();
okno.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
okno.setVisible(true);
}
}
import javax.swing.;
import java.awt.;
import java.awt.geom.;
import java.awt.event.;
import java.lang.String;
import java.awt.Container;
class Panel extends JPanel
{
public Panel()
{
setBackground(Color.LIGHT_GRAY);
repaint();
// menu programu
JMenuBar pasekMenu = new JMenuBar();
JMenu menuPlik = new JMenu("Plik");
JMenuItem elemNowy = new JMenuItem("Nowy");
menuPlik.add(elemNowy);
JMenuItem elemOtworz = new JMenuItem("Otwórz");
menuPlik.add(elemOtworz);
JMenuItem elemZapisz = new JMenuItem("Zapisz");
menuPlik.add(elemZapisz);
menuPlik.addSeparator();
menuPlik.add(new AbstractAction("Zamknij")
{
public void actionPerformed(ActionEvent zdarzenie)
{
System.exit(0);
}
});
pasekMenu.add(menuPlik);
JMenu menuEdycja = new JMenu("Edycja");
JMenu elemCofnij = new JMenu("Cofnij");
ButtonGroup Cgrupa = new ButtonGroup();
JMenuItem Clinia = new JMenuItem ("linia");
Cgrupa.add(Clinia);
elemCofnij.add(Clinia);
elemCofnij.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent zdarzenie)
{
}
});
JMenuItem Ctrojkat = new JMenuItem ("trójkąt");
Cgrupa.add(Ctrojkat);
elemCofnij.add(Ctrojkat);
elemCofnij.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent zdarzenie)
{
}
});
JMenuItem Ckwadrat = new JMenuItem ("kwadrat");
Cgrupa.add(Ckwadrat);
elemCofnij.add(Ckwadrat);
elemCofnij.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent zdarzenie)
{
}
});
JMenuItem Cokrag = new JMenuItem ("okrąg");
Cgrupa.add(Cokrag);
elemCofnij.add(Cokrag);
elemCofnij.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent zdarzenie)
{
}
});
JMenuItem Celipsa = new JMenuItem ("elipsa");
Cgrupa.add(Celipsa);
elemCofnij.add(Celipsa);
elemCofnij.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent zdarzenie)
{
}
});
menuEdycja.add(elemCofnij);
JMenuItem elemWyczysc = new JMenuItem("Wyczyść obraz");
menuEdycja.add(elemWyczysc);
JMenu elemTlo = new JMenu("Zmień kolor tła");
ButtonGroup Bgrupa = new ButtonGroup();
JRadioButton Bczarny = new JRadioButton("czarny",false);
Bgrupa.add(Bczarny);
elemTlo.add(Bczarny);
Bczarny.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent zdarzenie)
{
setBackground(Color.black);
repaint();
}
});
JRadioButton Bzielony = new JRadioButton("zielony",false);
Bgrupa.add(Bzielony);
elemTlo.add(Bzielony);
Bzielony.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent zdarzenie)
{
setBackground(Color.green);
repaint();
}
});
JRadioButton Bniebieski = new JRadioButton("niebieski",false);
Bgrupa.add(Bniebieski);
elemTlo.add(Bniebieski);
Bniebieski.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent zdarzenie)
{
setBackground(Color.blue);
repaint();
}
});
JRadioButton Bbialy = new JRadioButton("biały",false);
Bgrupa.add(Bbialy);
elemTlo.add(Bbialy);
Bbialy.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent zdarzenie)
{
setBackground(Color.white);
repaint();
}
});
JRadioButton Bczerwony = new JRadioButton("czerwony",false);
Bgrupa.add(Bczerwony);
elemTlo.add(Bczerwony);
Bczerwony.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent zdarzenie)
{
setBackground(Color.red);
repaint();
}
});
JRadioButton Bzolty = new JRadioButton("żółty",false);
Bgrupa.add(Bzolty);
elemTlo.add(Bzolty);
Bzolty.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent zdarzenie)
{
setBackground(Color.YELLOW);
repaint();
}
});
menuEdycja.add(elemTlo);
menuEdycja.addSeparator();
JMenuItem elemSiatka = new JCheckBoxMenuItem("siatka",false);
elemSiatka.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent zdarzenie)
{
if (siatka == true) siatka = false;
if (siatka == false) siatka = true;
repaint();
}
});
menuEdycja.add(elemSiatka);
pasekMenu.add(menuEdycja);
JMenu menuInfo = new JMenu("Info");
pasekMenu.add(menuInfo);
this.add(pasekMenu);
// koniec menu
// przyciski
JButton przyciskLinia = new JButton("LINIA");
this.add(przyciskLinia);
przyciskLinia.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent zdarzenie)
{
String slpx = JOptionPane.showInputDialog("Podaj wsp x poczatku ");
ltab[ln] = Double.parseDouble(slpx);
ln=ln+1;
String slpy = JOptionPane.showInputDialog("Podaj wsp y poczatku ");
ltab[ln] = Double.parseDouble(slpy);
ln=ln+1;
String slkx = JOptionPane.showInputDialog("Podaj wsp x konca ");
ltab[ln] = Double.parseDouble(slkx);
ln=ln+1;
String slky = JOptionPane.showInputDialog("Podaj wsp y konca ");
ltab[ln] = Double.parseDouble(slky);
ln=ln+1;
repaint();
}
});
JButton przyciskTrojkat = new JButton("TRÓJKĄT");
this.add(przyciskTrojkat);
przyciskTrojkat.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent zdarzenie)
{
String Ax = JOptionPane.showInputDialog("Podaj wsp x punktu A ");
ttab[tr] = Double.parseDouble(Ax);
tr=tr+1;
String Ay = JOptionPane.showInputDialog("Podaj wsp y punktu A ");
ttab[tr] = Double.parseDouble(Ay);
tr=tr+1;
String Bx = JOptionPane.showInputDialog("Podaj wsp x punktu B ");
ttab[tr] = Double.parseDouble(Bx);
tr=tr+1;
String By = JOptionPane.showInputDialog("Podaj wsp y punktu B ");
ttab[tr] = Double.parseDouble(By);
tr=tr+1;
String Cx = JOptionPane.showInputDialog("Podaj wsp x punktu C ");
ltab[tr] = Double.parseDouble(Cx);
tr=tr+1;
String Cy = JOptionPane.showInputDialog("Podaj wsp y punktu C ");
ttab[tr] = Double.parseDouble(Cy);
tr=tr+1;
repaint();
}
});
JButton przyciskKwadrat = new JButton("KWADRAT");
this.add(przyciskKwadrat);
przyciskKwadrat.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent zdarzenie)
{
String slpx = JOptionPane.showInputDialog("Podaj wsp x poczatku ");
ltab[ln] = Double.parseDouble(slpx);
ln=ln+1;
String slpy = JOptionPane.showInputDialog("Podaj wsp y poczatku ");
ltab[ln] = Double.parseDouble(slpy);
ln=ln+1;
String slkx = JOptionPane.showInputDialog("Podaj wsp x konca ");
ltab[ln] = Double.parseDouble(slkx);
ln=ln+1;
String slky = JOptionPane.showInputDialog("Podaj wsp y konca ");
ltab[ln] = Double.parseDouble(slky);
ln=ln+1;
repaint();
}
});
JButton przyciskOkrag = new JButton("OKRĄG");
this.add(przyciskOkrag);
przyciskOkrag.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent zdarzenie)
{
}
});
JButton przyciskElipsa = new JButton("ELIPSA");
this.add(przyciskElipsa);
przyciskElipsa.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent zdarzenie)
{
}
});
// koniec przyciski
// kolory
ButtonGroup grupa = new ButtonGroup();
JRadioButton czarny = new JRadioButton("czarny",false);
grupa.add(czarny);
this.add(czarny);
JRadioButton zielony = new JRadioButton("zielony",false);
grupa.add(zielony);
this.add(zielony);
JRadioButton niebieski = new JRadioButton("niebieski",false);
grupa.add(niebieski);
this.add(niebieski);
JRadioButton bialy = new JRadioButton("biały",false);
grupa.add(bialy);
this.add(bialy);
JRadioButton czerwony = new JRadioButton("czerwony",false);
grupa.add(czerwony);
this.add(czerwony);
JRadioButton zolty = new JRadioButton("żółty",false);
grupa.add(zolty);
this.add(zolty);
// koniec kolory
} // koniec konstruktora
public void paintComponent(Graphics g)
{
super.paintComponent(g);
Graphics2D g2 = (Graphics2D)g;
// siatka
if (siatka == true)
{
Toolkit zestaw = Toolkit.getDefaultToolkit();
Dimension rozmiarEkranu = zestaw.getScreenSize();
int wys = rozmiarEkranu.height;
int szer = rozmiarEkranu.width;
int j=45 , k=40 , jj=10 ,kk;
while (k<szer)
{
Line2D Slinia = new Line2D.Double(k,40,k,wys);
g2.draw(Slinia);
kk = k*4;
String str = ""+ kk;
g2.drawString("40",40,40);
g2.drawString("80",80,40);
g2.drawString("120",120,40);
g2.drawString(str,kk,40);
k=k+10;
}
while (j<wys)
{
Line2D Slinia = new Line2D.Double(30,j,szer,j);
g2.draw(Slinia);
jj = j*2;
String str = ""+ jj;
g2.drawString("50",10,50);
g2.drawString("70",10,70);
g2.drawString(str,10,jj);
j=j+10;
}
}
// trojkat
for (int i =0; i < tr;)
{
Line2D liniaAB = new Line2D.Double(ttab[i],ttab[i+1],ttab[i+2],ttab[i+3]);
Line2D liniaBC = new Line2D.Double(ttab[i],ttab[i+1],ttab[i+4],ttab[i+5]);
Line2D liniaAC = new Line2D.Double(ttab[i+2],ttab[i+3],ttab[i+4],ttab[i+5]);
g2.draw(liniaAB);
g2.draw(liniaBC);
g2.draw(liniaAC);
i=i+6;
}
// koniec trojkat
// linia
for (int i =0; i < ln;)
{
Line2D linia = new Line2D.Double(ltab[i],ltab[i+1],ltab[i+2],ltab[i+3]);
g2.draw(linia);
i=i+4;
}
// koniec linia
}
// linia
public int ln=0;
public double[] ltab = new double[1000];
// koniec linia
// trojkat
public int tr=0;
public double[] ttab = new double[1000];
// koniec trojkat
//siatka
boolean siatka=false;
}
// koniec klasy
import javax.swing.;
import java.awt.event.;
class ProsteOkno extends JFrame
{
public ProsteOkno()
{
Toolkit zestaw = Toolkit.getDefaultToolkit();
Dimension rozmiarEkranu = zestaw.getScreenSize();
int wysEkranu = rozmiarEkranu.height;
int szerEkranu = rozmiarEkranu.width;
setSize(szerEkranu,wysEkranu);
setTitle("Paint in Java");
// panel rysujacy do ramki
Panel panel = new Panel(); // panel
Container powZawartosci = getContentPane();
powZawartosci.add(panel, BorderLayout.WEST);
}
}