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

Composants Java Discussion :

Mettre à jour après la suppression d'une colonne JTable


Sujet :

Composants Java

  1. #1
    Nouveau membre du Club
    Inscrit en
    Août 2009
    Messages
    34
    Détails du profil
    Informations forums :
    Inscription : Août 2009
    Messages : 34
    Points : 39
    Points
    39
    Par défaut Mettre à jour après la suppression d'une colonne JTable
    j'arrive à supprimer une colonne d'un JTable mais je n'arrive à mettre à jour
    le nombre de colonnes normalement lorsque je supprime une colonne
    getColumnCount me renvoi 6 au lieu de 7 valeur initiale
    voici le 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
     
     table.addMouseListener(new MouseAdapter() {
    		   public void mouseClicked(MouseEvent e) {
     
    		         JTable target = (JTable)e.getSource();
    		         int row = target.getSelectedRow();
    		         final int column = target.getSelectedColumn();
    		         int buttonDown = e.getButton();
    		         if(buttonDown == MouseEvent.BUTTON3) {
    		             // Bouton DROIT enfoncé
    		    	 // System.out.println("Bouton Droit enfoncée");
    		    	  //--------------------
     
    		        {
     
    		    JPopupMenu jpopupmenu = new JPopupMenu();
     
    		    JMenuItem jmenuitem1 = new JMenuItem("Supprimer Cette colonne" );
    		                jmenuitem1.addActionListener(new ActionListener() {
    		                    public void actionPerformed(ActionEvent actionevent)
    		                    {
     
    		                    	if (column > 0)
    		        				{
    		                    		TableColumn tcol = table.getColumnModel().getColumn(column);
    		        					//table.removeColumn(tcol);
    		        					//model.setColumnCount( column - 1 );
    		                    		int columns = model.getColumnCount();
     
     
     
     
    		            						int view =
    		            							 table.convertColumnIndexToView(columns - 1);
    		            						TableColumn column =
    		            							table.getColumnModel().getColumn(view);
    		            						table.removeColumn( tcol );
     
     
    		            					model.setColumnCount( columns - 1 );
     
    		            				table.requestFocusInWindow();
    		            			}
     
    		        					//
    		        				}
     
     
    		                    	//-----------------------
     
    		                });
    		                jpopupmenu.add(jmenuitem1);
    		                jpopupmenu.show(e.getComponent(), e.getX(), e.getY());
    		    }
     
     
     
     
    		      }
     
    }});
     
    	      JPanel panbt=new JPanel();
    		JButton bt=new JButton("enregistrer");
    		panbt.add(bt);
    		bt.addActionListener( new ActionListener()
    		{
    			public void actionPerformed(ActionEvent e)
    			{
     
    				int nbr=model.getColumnCount();
    				System.out.println(nbr);
    			}
    		});

  2. #2
    Membre émérite
    Avatar de olivier.pitton
    Homme Profil pro
    Développeur Java
    Inscrit en
    Juin 2012
    Messages
    355
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2012
    Messages : 355
    Points : 2 814
    Points
    2 814
    Par défaut
    Plop,

    Je pense qu'il faut mettre à jour le model en utilisant la méthode fireTableStructureChanged.

    JavaDoc

Discussions similaires

  1. Réponses: 4
    Dernier message: 30/06/2006, 15h26
  2. [C#] mettre à jour ma bdd à partir d'une datatable
    Par rudhf dans le forum Windows Forms
    Réponses: 17
    Dernier message: 27/04/2006, 14h27
  3. [vb/excel] suppression d'une colonne d'un tableau
    Par Mugette dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 21/10/2005, 10h17
  4. Réponses: 4
    Dernier message: 16/09/2005, 14h49
  5. Réponses: 3
    Dernier message: 09/07/2004, 10h23

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