Foro de elhacker.net

Programación => Java => Mensaje iniciado por: shadows789 en 3 Mayo 2014, 20:26 pm



Título: Problemas con Graphics y JPanel
Publicado por: shadows789 en 3 Mayo 2014, 20:26 pm
hola chicos estoy recien comenzando a estudiar/practicar java, el programa quiere mostrar una X en ventana pero no la muestra a la X solamente la ventana,alguien que me pueda ayudar :P
aca les dejo el codigo fuente:
Código
  1.  
  2. import java.awt.Graphics;
  3. import javax.swing.JPanel;
  4. public class paneldibujo extends JPanel {
  5. public void paintcomponent(Graphics g){
  6.  
  7. super.paintChildren(g);
  8.  
  9. int anchura=getWidth();
  10. int altura=getHeight();
  11.  
  12. g.drawLine(0,0,anchura,altura);
  13.  
  14. g.drawLine(0,altura,anchura,0);
  15.  
  16. }
  17.  
  18. }
  19. -------------------------------------------------------------------------------
  20.  
  21. import javax.swing.JFrame;
  22. public class pruebapaneldibujo {
  23. public static void main(String[] args){
  24. paneldibujo panel=new paneldibujo();
  25.  
  26. JFrame aplicacion=new JFrame();
  27.  
  28. aplicacion.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  29.  
  30. aplicacion.add(panel);
  31. aplicacion.setSize(250,250);
  32.  
  33. aplicacion.setVisible(true);
  34.  
  35. }
  36. }
  37.  
muchas gracias desde ya :D

[MOD] Para publicar codigo, usa las etiquetas GeShi, gracias.


Título: Re: Problemas con Graphics y JPanel
Publicado por: Chuidiang en 3 Mayo 2014, 23:53 pm
En vez de paintComponent(Graphics), sobrescribe paint(Graphics)

Se bueno.


Título: Re: Problemas con Graphics y JPanel
Publicado por: shadows789 en 4 Mayo 2014, 00:34 am
era eso muchas gracias :D ,porque no funcionaba antes :/?


Título: Re: Problemas con Graphics y JPanel
Publicado por: Chuidiang en 4 Mayo 2014, 12:46 pm
Cuando java necesita pintar cualquie componente (JLabel, JButton, JPanel, JFrame...) siempre, siempre, siempre acaba llamando a paint(). Al paintComponent() lo llaman solo los JPanel (o contenedores de otros componentes) y posiblemente sólo cuando tienen componentes dentro.

Se bueno.