[Java] Repositionnement JLabel dans JPanel
Résolu
zzzer
Messages postés
938
Statut
Membre
-
zzzer Messages postés 938 Statut Membre -
zzzer Messages postés 938 Statut Membre -
Bonjour,
Je rencontre actuellement un petit probleme quant au positionnement d'objets JLabel sur un JPanel : j'ai un Vector, contenant des objets de type NC (classe contenant un JLabel et un Point, representant les coordonnees).
Je place mes JLabel sur le JPanel sans souci, puis, quand j'ai termine, serialize le Vector dans un fichier et quitte l'appliquation.
Le probleme c'est que quand je re-ouvre le fichier, les JLabel sont bien ajoutes au JPanel mais leurs coordonnees ne sont pas du tout respectees : ils sont placees en haut, par defaut.
Voici mon code :
Quelqu'un a une idee du probleme ?
Merci d'avance !
Je rencontre actuellement un petit probleme quant au positionnement d'objets JLabel sur un JPanel : j'ai un Vector, contenant des objets de type NC (classe contenant un JLabel et un Point, representant les coordonnees).
Je place mes JLabel sur le JPanel sans souci, puis, quand j'ai termine, serialize le Vector dans un fichier et quitte l'appliquation.
Le probleme c'est que quand je re-ouvre le fichier, les JLabel sont bien ajoutes au JPanel mais leurs coordonnees ne sont pas du tout respectees : ils sont placees en haut, par defaut.
Voici mon code :
for (int i=0 ; i<components.size() ; i++) {
rightArea.add(Items.getJLabelNo(i)); // ajout des JLabel au JPanel
Items.getJLabelNo(i).setLocation(Items.getCoordNo(i)); // repositionnement des JLabel dans le JPanel
}
Quelqu'un a une idee du probleme ?
Merci d'avance !
A voir également:
- [Java] Repositionnement JLabel dans JPanel
- Jeux java itel - Télécharger - Jeux vidéo
- Waptrick java football - Télécharger - Jeux vidéo
- Eclipse java - Télécharger - Langages
- Waptrick java voiture - Télécharger - Jeux vidéo
- Java apk - Télécharger - Langages
3 réponses
Voici un code plus complet, soulevant le meme probleme :
Merci d'avance...
public class Main
{
public static JPanel jp;
public static JFrame f;
public static Vector components = new Vector<JLabel> ();
public static void main(String[] args)
{
f = new JFrame();
f.setExtendedState(JFrame.MAXIMIZED_BOTH);
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.setVisible(true);
components.add(new JLabel("toto"));
components.add(new JLabel("tata"));
components.add(new JLabel("tutu"));
jp = new JPanel();
jp.setBackground(Color.GREEN);
for (int i=0 ; i<components.size() ; i++)
{
((JLabel)components.get(i)).setLocation(i*50,i*50);
jp.add((JLabel)components.get(i));
}
f.add(jp);
}
}
Merci d'avance...