jbval
Messages postés4Date d'inscriptionlundi 3 février 2003StatutMembreDernière intervention28 février 2003
-
26 févr. 2003 à 22:26
jbval
Messages postés4Date d'inscriptionlundi 3 février 2003StatutMembreDernière intervention28 février 2003
-
28 févr. 2003 à 23:21
Salut,
g 1 pb avec une interface en java.
Je crée des carrés dans un JPanel et tout marche avec la j2sdk 1.3 mais lorsque je veux executer le même code sous la version 1.4, la fenetre s'affiche mais elle reste vide (aucun carré)!!!
Mon programe est un extend de JPanel qui redefinit la methode paintcomponent pour tracer un carré dans une fenetre.
J'ai essayé de recompiler sur la version 1.4 mais sans succès.
Y a-til une solution à mon pb ?? 8-)
jbval
Messages postés4Date d'inscriptionlundi 3 février 2003StatutMembreDernière intervention28 février 2003 28 févr. 2003 à 13:02
Voici mon code :
/* classe qui effectue le tracé
********************************/
import javax.swing.* ;
import java.awt.* ;
class arbreAsc extends JPanel
{
public void paintComponent(Graphics g)
{
super.paintComponent(g);
setOpaque(false);
//racine arbre
/**************/
g.drawRect(360,460,100,70);
g.drawString("Carmignani",362,472);
g.drawString("Jean-Baptiste",362,483);
g.drawString("Né le :",362,494);
g.drawString("27/03/1984",362,505);
g.drawString("Mort le :",362,516);
g.drawString("21/14/2591",362,527);
..... /*le reste est identique mais a des places differentes*/
}
/*Fonction qui appelle le dessin
**********************************/
JFrame dessin=new JFrame("Arbre Ascendant");
arbreAsc graph=new arbreAsc();
dessin.getContentPane().add(graph);
dessin.setVisible(true);
dessin.setResizable(false);
dessin.setBounds(102,84,820,600);
Tt fonctionne impeccable avec la j2sdk 1.3 mais avec la 1.4 la fenetre se crée mais reste desesperemment vide!!
cs_Duss
Messages postés890Date d'inscriptionlundi 8 avril 2002StatutMembreDernière intervention29 juillet 200411 28 févr. 2003 à 13:43
j'ai eu un probleme sensiblement identique
mais ca dessinait quand je faisais passer une fenetre devant !!
As tu essayé de mettre le super apres ta surcharge (en dernier) ?
Mon probleme, je l'avais resolu en rajoutant un :
implements ImageObserver dans la definition de ma class
Duss
jbval
Messages postés4Date d'inscriptionlundi 3 février 2003StatutMembreDernière intervention28 février 2003 28 févr. 2003 à 23:21
Merci pour les différentes solutions mais l'implements n'a pas fonctionné par contre j'ai enfin trouvé la solution à mon probleme.
Lors de l'appel de la classe qui fait le tracé, j'ai un objet dessin de type JFrame.
/*Fonction qui appelle le dessin
**********************************/
JFrame dessin=new JFrame("Arbre Ascendant");
arbreAsc graph=new arbreAsc();
dessin.getContentPane().add(graph);
dessin.setVisible(true);
dessin.setResizable(false);
dessin.setBounds(102,84,820,600);
dessin.show();//permet d'afficher le dessin et dc de resoudre le pb ( facultatif dans les versions anterieur à la 1.4)
Or dans la version 1.4 de la j2sdk si je rajoute dessin.show() mon dessin s'affiche alors que dans la 1.3 je n'en avais pas besoin, je pense que la gestion des fenetres doit etre differente dans la 1.4.
En tout cas merci pour le soutient et j'espère que ca pourra servir à quelqu'un.