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 :

[TableCellRenderer] petit bug


Sujet :

AWT/Swing Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre expérimenté
    Profil pro
    Étudiant
    Inscrit en
    Juillet 2004
    Messages
    230
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2004
    Messages : 230
    Par défaut [TableCellRenderer] petit bug
    bonjour a tous,
    je travaille sur des Image qui sont dans une map , j'ai fait la map et tout et la je travaille sur un editeur de map et je voudrais que toutes les Texture DIFFERENTE soit contenu dans un Jtable
    en exagerant a pein e n'ai quasiment pas eut e probleme jusque la sauf pour ajouter les Image dans le JTable
    j'ai cree un TableCellRenderer mais quand j'aoute les image toutes les ligne en benificie aussi en gros dans la troisiemen ligne j'ai l'image de la premiere et de la seconde ligne

    voici le code du renderer:
    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
    package com.daedric.swing.JTable;
     
    import java.awt.*;
    import java.awt.Color.*;
    import java.awt.image.BufferedImage;
     
    import javax.swing.*;
    import javax.swing.table.*;
     
    public class JPanelImageJtable extends JPanel implements TableCellRenderer {
    	public Object value;
     
    	public Component getTableCellRendererComponent(JTable table, Object value,
    			boolean isSelected, boolean hasFocus, int row, int column) {
    		if (value != null) {
    			this.value = value;
    			ImageIcon img = new ImageIcon((Image)value);
    			JLabel lab = new JLabel();
    			lab.setIcon(img);
    			this.add(lab);
    			if (this.hasFocus())
    				this.setBorder(UIManager
    						.getBorder("Table.focusCellHighlightBorder"));
    			else
    				this.setBorder(null);
    			return this;
    		} else
    			return null;
    	}
     
     
    }
    merci

    edit:

    je suis allez un peu vite tout a l'heure j'affecte l editor comme ceci a la JTable :
    JPanelImageJtable tapanel = new JPanelImageJtable();
    TableColumn cC = table.getColumnModel().getColumn(0);
    cC.setCellRenderer(tapanel);
    cC.setPreferredWidth(100);

  2. #2
    Membre expérimenté
    Profil pro
    Étudiant
    Inscrit en
    Juillet 2004
    Messages
    230
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2004
    Messages : 230
    Par défaut
    resolu
    dsl pour le post nutile
    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
     
     
    package com.daedric.swing.JTable;
     
    import java.awt.*;
    import java.awt.Color.*;
    import java.awt.image.BufferedImage;
     
    import javax.swing.*;
    import javax.swing.table.*;
     
    public class JPanelImageJtable extends JPanel implements TableCellRenderer {
    	public Object value;
     
    	public Component getTableCellRendererComponent(JTable table, Object value,
    			boolean isSelected, boolean hasFocus, int row, int column) {
    		if (value != null) {
     
    			this.value = value;
    			this.repaint();
    			if (this.hasFocus())
    				this.setBorder(UIManager
    						.getBorder("Table.focusCellHighlightBorder"));
    			else
    				this.setBorder(null);
    			return this;
    		} else
    			return null;
    	}
    	public void paintComponent(Graphics g){
    		super.paintComponents(g);
    		g.drawImage((Image)value,0,0,null);
    	}
    }

  3. #3
    Membre expérimenté Avatar de fumiste972
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Février 2003
    Messages
    228
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Février 2003
    Messages : 228
    Par défaut
    Ce serait bien de rajouter le tag Resolu

  4. #4
    Membre expérimenté
    Profil pro
    Étudiant
    Inscrit en
    Juillet 2004
    Messages
    230
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2004
    Messages : 230
    Par défaut
    merde pardon
    je me disais bien avoir oublié quelque chose
    merci

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

Discussions similaires

  1. Petit bug de compilation
    Par Chess0 dans le forum C++
    Réponses: 12
    Dernier message: 04/12/2005, 19h12
  2. Réponses: 1
    Dernier message: 29/11/2005, 17h32
  3. Petit bug.
    Par CCin dans le forum C
    Réponses: 15
    Dernier message: 12/10/2005, 12h08
  4. [RegEx] Petit Bug sur Expression Régulière
    Par Delphy113 dans le forum Langage
    Réponses: 2
    Dernier message: 25/09/2005, 20h48

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