IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 Java Discussion :

Définir la largeur préférée d'une JTable


Sujet :

Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2007
    Messages
    148
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 148
    Par défaut Définir la largeur préférée d'une JTable
    Bonsoir à tous,

    J'ai une table dans une Box verticale, elle-même contenue dans un autre conteneur en GridBagLayout, lui-même contenu dans un autre en BorderLayout. A l'affichage, la table se trouve au centre de la fenêtre et est loin de prendre tout la largeur. En effet, sa largeur préférée est de 300 pour une fenêtre dont la largeur est 800. Je voudrais savoir comment faire pour que cette table prenne la largeur maximale d'affichage de son container, sachant que je ne veux pas la mettre dans un scrollpane.
    Si j'ai bien compris le fonctionnement de ce layout dans la FAQ, ma box définit sa propre largeur préférée par rapport à celle de son composant le plus large :
    Stratégie de mise en forme :

    - Le BoxLayout horizontal calcul la taille maximale du plus haut composant et tente d'agrandir tous les autres composants à la même hauteur. Les composants qui n'ont pu atteindre cette hauteur sont alignés (appel à getAlignementY()). Les largeurs préférées des composants sont additionnées. Si la largeur du BoxLayout ne correspond pas à cette somme, la taille des composants est ajustée dans les limites des tailles min et max. Si le Box est trop petit, des composants ne seront pas affichés.
    - stratégie analogue pour le BoxLayout vertical.
    Je voudrais "simplement" que ma table soit la plus large possible pour pouvoir prendre toute la largeur de la partie centre du conteneur en BorderLayout.
    Comment dois-je faire svp ? Merci d'avance.

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    37
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mars 2006
    Messages : 37
    Par défaut
    Si tu veux que ta table prenne toute la place du centre de ton BorderLayout pourquoi tu la mets d'abord dans un BoxLayout puis dans un GridBagLayout ?
    Autrement dis pourquoi tu la mets pas directement dans ton BorderLayout (BorderLayout.CENTER) ?

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2007
    Messages
    148
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 148
    Par défaut
    Parce qu'en fait, il y a plusieurs tables les unes à la suite des autres et que comme je ne veux pas utiliser de scrollpane pour chaque table mais un pour toutes les tables, je dois faire une box pour y insérer chaque table avec son header.

  4. #4
    Expert confirmé
    Avatar de sinok
    Profil pro
    Inscrit en
    Août 2004
    Messages
    8 765
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2004
    Messages : 8 765
    Par défaut
    Ca peut très bien se faire avec un BorderLayout à la place d'une Box.

    Tu mets ta table dans le center et ton header dans north.

    Ensuite définir les preferredSize n'est pas une pratique géniale en soit. Mieux vaut passer par les paramètre des répartition du GridBagLayout que sont le fill, le weightx, le weighty et ainsi de suite?

Discussions similaires

  1. [PHPExcel] Comment définir la largeur de toute une colonne ?
    Par flashphp dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 26/05/2009, 18h36
  2. Définir la largeur d'une liste
    Par jpascal dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 26/03/2008, 09h11
  3. [JScrollPane]Définir la taille d'une JTable
    Par leminipouce dans le forum Composants
    Réponses: 1
    Dernier message: 03/04/2007, 13h29
  4. Réponses: 1
    Dernier message: 01/08/2006, 21h10
  5. Définir la largeur maximum d'une string
    Par ozzmax dans le forum Langage
    Réponses: 6
    Dernier message: 26/06/2006, 17h53

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo