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

AWT/Swing Java Discussion :

Problème avec une JTable


Sujet :

AWT/Swing Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de Spinoza23
    Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2007
    Messages
    328
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 328
    Par défaut
    Bonjour a tous ,

    j'ai un problème avec une JTable.
    Je vous explique donc pour vous situer ce que j'ais fais: j'ais créé une sorte de moteur de recherche de tables. J'ais donc une JDialog pour faire cette recherche. Elle contien 4 parties.

    La première partie pour les critères de recherche avec 3 champs : Nom table/Libellé, Nom colonne/Libellé, Nom Application/Libellé et Un bouton recherche.
    J'ais ensuite 3 JPanel. Le premier contien un JTree et affiche le résultat de la recherche par Nom d'application - catégorie _ libellé table. Le deuxième JPanel affiche dans une JTable les détails de la table sélectionnée dans le JTree; ce JPanel contien également des libellé dans lesquels j'affiche le nom de la table, le libellé, et l'application.
    Le troisième JPanel affiche les indexes des colonnes également dans une JTable. J'ais enfin une Bare d'outils avec deux boutons. Annuler pour retourner a la page précédente sans faire de seléction, et importer pour importer la table selectionnée et ses informations.

    La JDialog se ferme alors et ma JTable s'affiche alors dans un JPanel. C'est une sorte de fenètre ou mes tables s'affichent sous forme grafique. Je peux ainsi importer plusieurs JTables dans mon JPanel sans problème, enfin presque.

    Les Jtables qui s'affichent dans mon JPanel ont une particularitée et c'est la mon problème la barre d'intitulé des deux colonnes que j'affiche est, comment dire, completement tassé, si bien qu'on ne peux pas lire l'intitulé. J'ais essayé pas mal de choses pour modifier ce problème mais rien n'y fait. Je ne comprend pas comment ca se fait ... voici une partie de mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
           private void initPanel()
        {
    //[...]
    // Panneau du schéma des tables
            _schemecontainer.setLayout(new BorderLayout());
            _schemecontainer.add(_schemetools,BorderLayout.NORTH);
            _schemepanel = new JPanel();
            GridBagLayout gridbag = new GridBagLayout();
            _schemepanel.setLayout(gridbag);
            _schemepanel.setPreferredSize(new Dimension(700,400));
            _schemecontainer.add(_schemepanel,BorderLayout.CENTER);
        }
     
        public void actionPerformed(ActionEvent evt)
        {
     
            if (_bcreate.equals(evt.getSource()))
            {
                TableWizardControler controler=new TableWizardControler();
                TableWizardViewer tabviewer=new TableWizardViewer(controler,HomeViewer.getParentFrame());
                if (!tabviewer.isCanceled())
                {
                    _controler.addTable(controler.getSelectedTable());
                    addDescribeTable(controler.getSelectedTable());
                }
            }
        }
     
        public void addDescribeTable(DataTableEntity table)
        {
            GridBagLayout gridbag=(GridBagLayout)_schemepanel.getLayout();
     
            //Création de contraintes pour le positionnement du GridBag
            GridBagConstraints constraint = new GridBagConstraints();
            constraint.fill = GridBagConstraints.HORIZONTAL;
            constraint.insets = new Insets (2,2,2,2);
            constraint.gridx = _controler.getTableCount()+1;
            constraint.gridy = 1;
            JTable tab=new JTable(table.getTableModel());
     
            //Mise en forme des colonnes
            tab.getColumnModel().getColumn(0).setPreferredWidth(80);
            //Enchainement des Set... pour rendre la colonne invisible
            tab.getColumnModel().getColumn(1).setPreferredWidth(0);
            tab.getColumnModel().getColumn(1).setMinWidth(0);
            tab.getColumnModel().getColumn(1).setMaxWidth(0);
            tab.getColumnModel().getColumn(2).setPreferredWidth(0);
            tab.getColumnModel().getColumn(2).setMinWidth(0);
            tab.getColumnModel().getColumn(2).setMaxWidth(0);
            tab.getColumnModel().getColumn(3).setPreferredWidth(0);
            tab.getColumnModel().getColumn(3).setMinWidth(0);
            tab.getColumnModel().getColumn(3).setMaxWidth(0);
            tab.getColumnModel().getColumn(4).setPreferredWidth(0);
            tab.getColumnModel().getColumn(4).setMinWidth(0);
            tab.getColumnModel().getColumn(4).setMaxWidth(0);
            tab.getColumnModel().getColumn(5).setPreferredWidth(150);
            tab.getColumnModel().getColumn(6).setPreferredWidth(0);
            tab.getColumnModel().getColumn(6).setMinWidth(0);
            tab.getColumnModel().getColumn(6).setMaxWidth(0);        
            tab.getColumnModel().getColumn(7).setPreferredWidth(0);
            tab.getColumnModel().getColumn(7).setMinWidth(0);
            tab.getColumnModel().getColumn(7).setMaxWidth(0);        
            tab.getColumnModel().getColumn(8).setPreferredWidth(0);
            tab.getColumnModel().getColumn(8).setMinWidth(0);
            tab.getColumnModel().getColumn(8).setMaxWidth(0);        
            tab.getColumnModel().getColumn(9).setPreferredWidth(0);
            tab.getColumnModel().getColumn(9).setMinWidth(0);
            tab.getColumnModel().getColumn(9).setMaxWidth(0);        
            tab.getColumnModel().getColumn(10).setPreferredWidth(0);
            tab.getColumnModel().getColumn(10).setMinWidth(0);
            tab.getColumnModel().getColumn(10).setMaxWidth(0);
     
     
            JScrollPane scrolltab=new JScrollPane(tab);
            scrolltab.setPreferredSize(new Dimension(250,200));
            gridbag.setConstraints(scrolltab, constraint);
            _schemepanel.add(scrolltab,BorderLayout.CENTER);
     
        }
    Je suppose que ca n'a pas l'air évident mais j'ais vraiment besoin d'aide alors n'hésitez pas. D'avance MERCI





    Voici un screen shot afin de vous aider a mieux comprendre mon problème. Désolé pour la qualité d'image

    J'ais vraiment cherché absolument partout et je n'ais rien trouvé (possible que j'ais mal cherché mais bon...) J'ais vraiment besoin d'aide la car je n'avance plus du tout...
    Fichiers attachés Fichiers attachés

  2. #2
    Rédacteur
    Avatar de eclesia
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    2 111
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 111

  3. #3
    Membre éclairé Avatar de Spinoza23
    Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2007
    Messages
    328
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 328
    Par défaut
    Dans le lien que tu m'a passé, on parle de largeur de colonnes, mon problème c'est finalement l'épaisseur des entêtes de colonne. Sachant que je ne fais qu'un transfert d'une fenêtre a l'autre de ma table. Je ne change pas (pour l'instant) l'intitulé des colonnes.

    J'ais essayé avec JXTable comme précisé dans le lien que tu as posté mais JXTable n'éxiste visiblement pas.

  4. #4
    Rédacteur
    Avatar de eclesia
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    2 111
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 111
    Par défaut
    Il te faut la librairie de sinwglabs, que tu trouve sur le site.

    swingx.jar

  5. #5
    Membre éclairé Avatar de Spinoza23
    Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2007
    Messages
    328
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 328
    Par défaut
    Je n'ais pas trouvé cette librairie... hormis un tuto en netbean...

  6. #6
    Membre émérite
    Avatar de sironimo
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    669
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2004
    Messages : 669
    Par défaut
    Sinon tu peux aussi passer à la version 6.0 de Java SE qui l'intègre maintenant en standard

    http://swinglabs.org/downloads.jsp

    Il suffisait de regarder sur la page de téléchargement sur le site de swinglabs

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème de taille avec une JTable
    Par Yann_69 dans le forum API standards et tierces
    Réponses: 1
    Dernier message: 02/07/2012, 11h10
  2. Problème de focus avec une JTable
    Par doudoujava dans le forum Composants
    Réponses: 0
    Dernier message: 20/05/2009, 10h52
  3. Problèmes avec une JTable
    Par Fab916 dans le forum Composants
    Réponses: 4
    Dernier message: 12/01/2006, 14h11
  4. problème avec une requête imbriquée
    Par jaimepasteevy dans le forum Langage SQL
    Réponses: 13
    Dernier message: 05/12/2003, 10h29
  5. Problème avec une procédure stockée
    Par in dans le forum Langage SQL
    Réponses: 4
    Dernier message: 27/05/2003, 15h33

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