Disegnamo in una finestra con Java

Ecco ragazzi come disegnare semplicemente in una finestra Java

Per prima cosa iniziamo con una JFrame contenitore di un pannello. Una cornice ha bisogno di una tela quindi realizzo un programma dove nel main inizializzo il JFrame e nella classe successiva inizializzo un JPanel che per analogia è la mia tela..

ecco il codice:


package disegno;
import javax.swing.*;
public class Disegno {
public static void main(String[] args) {    
JFrame t= new JFrame("Grafica Iterativa");
    t.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

    Tela p = new Tela();
    t.add(p);
    t.setSize(500, 500);
    t.setVisible(true);
}

}

ecco il secondo file

package disegno;
import java.awt.; import javax.swing.;
public class Tela extends JPanel{

public void paintComponent(Graphics g)
{
   super.paintComponent(g);
   this.setBackground(Color.WHITE);
   g.setColor(Color.BLACK);
   // questa istruzione seguente pubblica
   // un rettangolo nella posizione 5,5 in alto a sx

  for (int r=0;r<500;r=r+12) 
   for(int i=0;i<500;i=i+12)
   {
   g.fillRect(i,r,10,10);
   }

   /*while(i<500)
   {   g.fillRect(i,12,10,10);
       i=i+12;
       numeroRettangoli++;
       if(numeroRettangoli==40)
       { 
           numeroRettangoli=0;
            i=0;
            r=r+12;
       }
   }*/
}

}

2 thoughts on “Disegnamo in una finestra con Java

  1. public void paintComponent(Graphics g)
    {
    super.paintComponent(g);
    this.setBackground(Color.WHITE);

    // questa istruzione seguente pubblica
    // un rettangolo nella posizione 5,5 in alto a sx
    int x=0;
    int n=0;
    while (x<500)
    {
    if (n%2==0)
    { g.setColor(Color.RED);}
    else
    {g.setColor(Color.BLACK);}

    g.fillRect(x, 3, 20, 20);
    x=x+23;

    n++;
    }

    /*while(i<500)
    { g.fillRect(i,12,10,10);
    i=i+12;
    numeroRettangoli++;
    if(numeroRettangoli==40)
    {
    numeroRettangoli=0;
    i=0;
    r=r+12;
    }
    }*/
    }
    }

  2. int x=0;int y=0;
    int n=0;

    while (y<500)
    {
    while (x<500)
    {
    if (n%2==0)
    { g.setColor(Color.RED);}
    else
    {g.setColor(Color.BLACK);}
    g.fillRect(x, y, 20, 20);
    x=x+23;

    n++;
    }
    x=0;
    y=y+23;
    }

    /*while(i<500)
    { g.fillRect(i,12,10,10);
    i=i+12;
    numeroRettangoli++;
    if(numeroRettangoli==40)
    {
    numeroRettangoli=0;
    i=0;
    r=r+12;
    }
    }*/
    }
    }

Leave a Reply

Your email address will not be published.

This site uses Akismet to reduce spam. Learn how your comment data is processed.