Dessin d'une classe dans un JPanel [Résolu]

bestlove00 17 Messages postés mercredi 19 février 2014Date d'inscription 2 mars 2014 Dernière intervention - 20 févr. 2014 à 09:15 - Dernière réponse : cs_Julien39 6450 Messages postés mardi 8 mars 2005Date d'inscriptionModérateurStatut 17 mai 2018 Dernière intervention
- 20 févr. 2014 à 09:55
Bonjour,
j'ai fait un rectangle vide dans une interface swing et je veux remplir ce rectangle avec des attributs et des méthodes venant d'un fichier xmi
Mais je ne sait pas comment faire ça??
Afficher la suite 

Votre réponse

3 réponses

Meilleure réponse
cs_Julien39 6450 Messages postés mardi 8 mars 2005Date d'inscriptionModérateurStatut 17 mai 2018 Dernière intervention - 20 févr. 2014 à 09:55
1
Merci
Oui bien sûr, une fois que tu as lu le fichier XML et récupéré tous les attributs, tu peux appeler la classe en lui passant des paramètres :

import java.awt.BorderLayout;

import javax.swing.BorderFactory;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextArea;


public class Classe extends JPanel {
	
	public Classe(String nomClasse){
		setLayout(new BorderLayout());
		JLabel nom = new JLabel(nomClasse, JLabel.CENTER);
		nom.setBorder(BorderFactory.createEtchedBorder());
		add(nom, BorderLayout.NORTH);
		JTextArea attributs = new JTextArea();
		attributs.setEditable(false);
		attributs.setBorder(BorderFactory.createEtchedBorder());
		attributs.setOpaque(false);
		attributs.setText("String attribut1\nString attribut2\nint valeur1\n\nmethode()");
		add(attributs, BorderLayout.CENTER);
	}
	
	public static void main(String[] args){
		JFrame f = new JFrame();
		f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		f.setSize(200, 250);
		f.setLocationRelativeTo(null);
		f.add(new Classe("NomDeLaClasse"));
		f.setVisible(true);
	}

}

Merci cs_Julien39 1

codes-sources a aidé 79 internautes ce mois-ci

Commenter la réponse de cs_Julien39
cs_Julien39 6450 Messages postés mardi 8 mars 2005Date d'inscriptionModérateurStatut 17 mai 2018 Dernière intervention - 20 févr. 2014 à 09:43
0
Merci
Salut,

Moi, j'aurais fais un truc de ce genre en travaillant plutot avec un JTextPane pour que ce soit plus joli :
import java.awt.BorderLayout;

import javax.swing.BorderFactory;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextArea;

import oracle.jrockit.jfr.JFR;


public class Classe extends JPanel {
	
	public Classe(){
		setLayout(new BorderLayout());
		JLabel nom = new JLabel("nomClasse", JLabel.CENTER);
		nom.setBorder(BorderFactory.createEtchedBorder());
		add(nom, BorderLayout.NORTH);
		JTextArea attributs = new JTextArea();
		attributs.setEditable(false);
		attributs.setBorder(BorderFactory.createEtchedBorder());
		attributs.setOpaque(false);
		attributs.setText("String attribut1\nString attribut2\nint valeur1\n\nmethode()");
		add(attributs, BorderLayout.CENTER);
	}
	
	public static void main(String[] args){
		JFrame f = new JFrame();
		f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		f.setSize(200, 250);
		f.setLocationRelativeTo(null);
		f.add(new Classe());
		f.setVisible(true);
	}

}

Commenter la réponse de cs_Julien39
bestlove00 17 Messages postés mercredi 19 février 2014Date d'inscription 2 mars 2014 Dernière intervention - 20 févr. 2014 à 09:51
0
Merci
est ce que on peut transformer le contenu de cette label en un contenu dynamique par exemple récupérer le contenu d'un fichier xml dans cette label ou forme
Commenter la réponse de bestlove00

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.