Wie zu malen eine Rasterlinie als hintergrund auf JPanel

Habe ich ein problem. Ich verwendete Gridbaglayout in meinem JFrame. Eine der Komponente ist JPanel.

Wollte ich zeichnen Sie eine Rasterlinie als hintergrund für mein JPanel. e.g in der folgenden Programm, es soll zu produzieren 3 vertikale und 3 horizontale Linien, allerdings zeigt es nur 2 vertikale und 2 horizontale Linie. die Letzte Zeile war nicht zu sehen.

Ein weiteres problem war, dass, es scheint, dass die Größe des JPanel größer war, dass das, was ich eingestellt habe. Ich bemerkte, dass diese durch die Länge der Linie, die kürzer ist, dass das JPanel weißen hintergrund.

  public class drawLayout extends JComponent 
    {

 public Dimension getPreferredSize() { 
  return new Dimension(600, 600); 
 }

 public int getY() { 
  return 0; 
 } 

 public int getX() { 
   return 0; 
    }

    @Override public void paintComponent(Graphics g)
    {
     g.setPaint(Color.GRAY);

            for (int i = 0; i <= getSize().width; i += 300) 
            {
               g2.drawLine(i, 0, i, getSize().height);
            }

            for (int i = 0; i <= getSize().height; i += 300) 
            {
               g2.drawLine(0,i, getSize().width, i);
            }
    } 
}

EDIT:

http://www.freeimagehosting.net/image.php?1af16edc28.jpg

Das erste problem gelöst (die Gitternetzlinien gezeigt wurden, die auf JPanel).
Das andere problem war mir ein Rätsel. Wie Sie sehen können auf dem Bild im Anhang, die Größe des JPanel zu sein scheint, mehr als 600 beim Blick auf die Länge des Gitters (markiert als rote box). Wie kann ich dies lösen, so dass die Rasterlinie aus, der hintergrund schön Aussehen, ohne zusätzliche weiße Fläche außerhalb der Rasterlinie?

  • Bitte siehe mein update.
InformationsquelleAutor Jessy | 2009-12-08
Schreibe einen Kommentar