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 un bouton dans une cellule !!!!


Sujet :

Composants Java

  1. #1
    Membre du Club
    Inscrit en
    Novembre 2005
    Messages
    70
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 70
    Points : 52
    Points
    52
    Par défaut Mettre un bouton dans une cellule !!!!
    Bonjour, je veux personnaliser une cellule en mettant un boutton dedans j'ai créer une classe qui implemante l'interface TableCellEditor comme suit:
    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
    public class MonBouttonDelete implements TableCellEditor   {
     
     
       JButton b=new JButton("Supprimer");
        public MonBouttonDelete() {
       	 b.addActionListener(new ActionListener() {
                     public void actionPerformed(ActionEvent e) {
    			// TODO Auto-generated method stub
    			b_click(e);
    		}});
        } 
    public Component getTableCellEditorComponent(
     
    	      JTable table, Object value, boolean isSelected,
     
    	      int row, int col){
     
     
    	         b.setHorizontalAlignment(JButton.CENTER);
     
    	         return b;	 
     
     
    	  }
     
    	    void b_click(ActionEvent e) {
    			// TODO Auto-generated method stub
    			System.out.print("kiki");
    		} 
     
    .........
    afin de l'appliquer a la colonne ajouter:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    jTableIGRModel = new DefaultTableModel(data, columnNames);
    ((DefaultTableModel)jTableIGRModel).addColumn("Action");
     JTable table = new JTable(jTableIGRModel);
    jScrollPaneIGR.setViewportView(table);
    TableColumn cAction = table.getColumnModel().getColumn(jTableIGRModel.getColumnCount()-1);
    cAction.setCellEditor( new MonBouttonDelete());
    MAIS çA NE MARCHE PAS (COMME D'HABITUDE ) le boutton n'est pas affiché

  2. #2
    Membre expérimenté Avatar de herve91
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    1 282
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 1 282
    Points : 1 608
    Points
    1 608
    Par défaut
    Pour afficher le bouton, il te faut aussi définir un renderer spécifique sur la colonne.

  3. #3
    Membre du Club
    Inscrit en
    Novembre 2005
    Messages
    70
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 70
    Points : 52
    Points
    52
    Par défaut
    oui merci je me suis rendu compte

Discussions similaires

  1. Réponses: 3
    Dernier message: 13/08/2008, 14h45
  2. Envoyer un Soap dans Excel et mettre l'acquittement dans une cellule
    Par akdmks dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 27/02/2008, 17h35
  3. [JTable] mettre deS checkbox dans une cellule
    Par Lady dans le forum Composants
    Réponses: 11
    Dernier message: 05/09/2007, 12h21
  4. comment en VBA mettre les mots dans une cellule en oblique
    Par antoine.dandois dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 12/02/2007, 17h10
  5. JTable : comment insérer un bouton dans une cellule ?
    Par donyas dans le forum Composants
    Réponses: 2
    Dernier message: 08/08/2006, 15h54

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