[java][swing] pbm position JLabel dans Box

Résolu
Labiche54 Messages postés 14 Statut Membre -  
JFS77 Messages postés 437 Statut Membre -
Bonjour,
Après avoir fouillé une bonne partie de tutoriels sur les Box en java, je ne suis toujours pas parvenu à résoudre mon problème : j'ai une JFrame ou je veux afficher un titre en JLabel et un JTabbedPane en dessous de ce titre.
Le moyen le plus simple semble-t'il est d'utiliser le composant Box. Ca marche nikel mais le pbm c'est que je ne peux pas positionner mon JLabel où je veux, ni gérer la taille de mon premier étage de Box.
Les BorderLayout.CENTER etc...sont totalement inefficace et la Glue me rajoute un espace monstre entre mon titre et mes onglets !

Je ne sais pas si j'ai été très clair mais si qqn à une idée ??

Merci d'avance !

PS : voici mon code !

import java.awt.BorderLayout;
import java.awt.Font;
import javax.swing.Box;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JTabbedPane;
import javax.swing.SwingUtilities;
import javax.swing.UIManager;

public class InterfaceGene{

private static JLabel titre = null;
static JTabbedPane tabbedPane = new JTabbedPane();

public static void main(String[] args) {
final JFrame f = new JFrame();
SwingUtilities.invokeLater(new Runnable() {
public void run() {
Box vBox = Box.createVerticalBox();
titre = new JLabel();
titre.setText("Syncroniseur de sous-titres");
Font font = new Font("Arial", Font.BOLD, 20);
titre.setFont(font);
vBox.add(titre, BorderLayout.CENTER);
tabbedPane.setSize(100, 300);
tabbedPane.addTab("Synchro Auto", InterfaceAuto.getJContentPane());
tabbedPane.addTab("Synchro Manu", InterfaceManu.getJContentPane());
vBox.add(tabbedPane);
f.add(vBox,BorderLayout.CENTER);
f.setSize(610, 650);
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.setVisible(true);
f.setTitle("Sub Syncrone");

}
});
}

}

11 réponses

  1. JFS77 Messages postés 437 Statut Membre 70
     
    Pourquoi tu utilise un box ???
    0
  2. Labiche54 Messages postés 14 Statut Membre
     
    Ben j'ai pas réussi à mettre un titre au dessus de mes onglets, ya un autre moyen !!????????????,
    0
  3. JFS77 Messages postés 437 Statut Membre 70
     
    je comprends pas un titre au dessus des onglets. tu peut le faire normalement.

    Ton problème c'est que le JtabePanne prend toute la frame sinon ?
    0
  4. Labiche54 Messages postés 14 Statut Membre
     
    oui voilà !! (désolé je suis pas clair du tout !)
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. JFS77 Messages postés 437 Statut Membre 70
     
    même en utilisant un layout ???
    0
  7. JFS77 Messages postés 437 Statut Membre 70
     
    style

    JLabel label = new JLabel("Syncroniseur de sous-titres" (PAGE_START)");
    pane.add(label, BorderLayout.PAGE_START);

    JTabbedPane tabbedPane = new JTabbedPane((CENTER));
    pane.add( tabbedPane, BorderLayout.CENTER);
    0
  8. Labiche54 Messages postés 14 Statut Membre
     
    ben le Layout tu l'abbplique au tabbedpan ? et puis le pbm c'est que tu peux pas lui donner (au tabbedpane) le taille que tu veux avec un layout non ?
    (je suis une grosse quiche en java désolé, et merci de repondre si vite !)
    0
  9. Labiche54 Messages postés 14 Statut Membre
     
    ah attends j'essaye ça !
    0
  10. JFS77 Messages postés 437 Statut Membre 70
     
    euh pardon vire les parenthèses stupide des première lignes lol

    JLabel label = new JLabel("Syncroniseur de sous-titres" );
    pane.add(label, BorderLayout.PAGE_START);

    JTabbedPane tabbedPane = new JTabbedPane();
    pane.add( tabbedPane, BorderLayout.CENTER);
    0
  11. Labiche54 Messages postés 14 Statut Membre
     
    Whouuuaaaaaa mais ça marche très trop bien ! merci mille fois !
    comme quoi j'ai cherché vraiment trop compliqué !
    merci encore !
    0
  12. JFS77 Messages postés 437 Statut Membre 70
     
    Lol de rien tant mieux pour toi !
    0