Compatibilite graphique j2sdk 1.4 et 1.3

jbval Messages postés 4 Date d'inscription lundi 3 février 2003 Statut Membre Dernière intervention 28 février 2003 - 26 févr. 2003 à 22:26
jbval Messages postés 4 Date d'inscription lundi 3 février 2003 Statut Membre Dernière intervention 28 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-)

Merci d'avance

May the force be with you
JB

4 réponses

cs_Duss Messages postés 890 Date d'inscription lundi 8 avril 2002 Statut Membre Dernière intervention 29 juillet 2004 11
27 févr. 2003 à 10:41
Salut,
ecoute devrait pas y avoir de probleme !!
Poste ton code pour voir d'ou ca peut venir.
Duss
0
jbval Messages postés 4 Date d'inscription lundi 3 février 2003 Statut Membre Dernière intervention 28 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!!

May the force be with you
JB
0
cs_Duss Messages postés 890 Date d'inscription lundi 8 avril 2002 Statut Membre Dernière intervention 29 juillet 2004 11
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
0
jbval Messages postés 4 Date d'inscription lundi 3 février 2003 Statut Membre Dernière intervention 28 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.

May the force be with you
JB
0
Rejoignez-nous