[JAVA] jPanel met paintcomponent

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

  • battler
  • Registratie: November 2004
  • Laatst online: 30-06 15:11
Ik wil graag op een aantal images die allemaal in een panel zitten wat lijnen tekenen.

Om te beginnen dacht ik laat ik eerst maar wat lijnen zetten in een Jpanel. Op het moment dat ik alles vanuit scratch scrhijf gaat het goed, ga ik het echter combineren met de code van netbeans dan snap ik en netbeans er niets meer van.

- Een lege jPanel genaamd jPanel2.
code:
1
2
3
4
5
  private void SetLine()
    {
    Draw line = new Draw();
    jPanel2.add(line);
    }


De classe Draw:
code:
1
2
3
4
5
6
7
8
9
10
11
12
public class Draw extends JPanel {

    @Override
    protected void paintComponent(Graphics g)
    {
        super.paintComponent(g);
        this.setBackground(Color.green);

        g.setColor(Color.black);
        g.fillRect(25, 25, 30, 100);      
    }
}


Die Override methode wordt nooit uitgevoerd. Maar vanuit een constructor die methode aanroepen lukt ook niet. Wie/wat/waar gaat er mis?

Lux.Architectuur | Van Dromen tot Wonen | www.Lux-a.nl


Acties:
  • 0 Henk 'm!

  • Domdo
  • Registratie: Juni 2009
  • Laatst online: 30-06 20:29
had je
Java:
1
2
3
4
5
6
  private void SetLine()
    {
    Draw line = new Draw();
    jPanel2.add(line);
    jPanel2.updateUI();
    }


al geprobeerd?

Acties:
  • 0 Henk 'm!

  • battler
  • Registratie: November 2004
  • Laatst online: 30-06 15:11
Zowel de Update als de Repaint mogen niet baten. Die PaintComponent wordt gewoon niet uitgevoerd. Op zich wel logisch want hij wordt helemaal nergens aangeroepen.

Lux.Architectuur | Van Dromen tot Wonen | www.Lux-a.nl


Acties:
  • 0 Henk 'm!

  • NetForce1
  • Registratie: November 2001
  • Laatst online: 17-09 16:09

NetForce1

(inspiratie == 0) -> true

Natuurlijk wordt paintComponent wel ergens aangeroepen, nl vanuit paint() in een van de super-classes van Draw. jPanel2.repaint() zou er voor moeten zorgen dat je lijntje getekend wordt. Zie ook: http://java.sun.com/products/jfc/tsc/articles/painting/.

De wereld ligt aan je voeten. Je moet alleen diep genoeg willen bukken...
"Wie geen fouten maakt maakt meestal niets!"