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 :

probleme avec un cast


Sujet :

Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Novembre 2006
    Messages
    422
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 422
    Par défaut probleme avec un cast
    Salut,
    Pour avoir des cellules de jtable qui prennent en charge les dates j'ai étendu le DefaultCellEditor et le DefaultTableCellRender .
    Tout va bien sauf lorsque j'essaie de récupérer la date inscrite dans la cellule:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    DefaultTableModel data = (DefaultTableModel) jTableParcours.getModel();
    Date heure= (Date) data.getValueAt(i, 1);
    j'obtiens l'heure et la date courante dans l'objet heure !
    Si je fais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    System.out.println("**" + data.getValueAt(i, 1));
    J'obtiens la bonne valeur .
    Que faire ?
    Merci d'avance.

  2. #2
    Rédacteur
    Avatar de CyberChouan
    Homme Profil pro
    Directeur technique
    Inscrit en
    Janvier 2007
    Messages
    2 752
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2 752
    Par défaut
    Je ne vois pas exactement quel est ton problème dans ce message...

    Mais si le problème est juste de l'ordre du format d'affichage (date non désirée en plus de l'heure), il faut passer par la classe SimpleDateFormat pour spécifier le format d'affichage souhaité pour la date.
    Avant de poster, pensez à regarder la FAQ, les tutoriaux, la Javadoc (de la JRE que vous utilisez) et à faire une recherche
    Je ne réponds pas aux questions techniques par MP: les forums sont faits pour ça
    Mes articles et tutoriaux & Mon blog informatique

  3. #3
    Membre éclairé
    Inscrit en
    Novembre 2006
    Messages
    422
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 422
    Par défaut
    Salut ,
    le problème c'est que lorsque je modifie la date d'une cellule et que je fais un affichage du contenu de la cellule avec System.out.println("**" + data.getValueAt(i, 1)); j'obtiens la bonne date mais lorsque j'essaie de mettre la valeur de la cellule dans un objet Date j'obtiens la date courante.
    Merci pour votre aide.

  4. #4
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    si tu nous montrait déjà ton code, ce que tu nous montre est trop spartiate pour qu'on t'aide. et ne te repose pas sur toString, pour faire les conversion Date <-> String utilise toujours simpledateformat.

  5. #5
    Membre éclairé
    Inscrit en
    Novembre 2006
    Messages
    422
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 422
    Par défaut
    voila mon code:
    j'utilise un renderer et un editor pour prendre en charge la saisie de l'heure dans les colonnes de la jtable:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     TableColumn col2 = jTableParcours.getColumnModel().getColumn(1);
            col2.setCellEditor(new MyDateEditor("HH:mm"));
            col2.setCellRenderer(new MyDateRenderer("HH:mm"));
    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
     public class MyDateEditor extends DefaultCellEditor {
     
            private JFormattedTextField textField;
     
            public MyDateEditor(String format) {
                super(new JFormattedTextField(new SimpleDateFormat(format)));
                textField = (JFormattedTextField) getComponent();
            }
     
            @Override
            public Object getCellEditorValue() {
                return textField.getValue();
            }
     
            @Override
            public Component getTableCellEditorComponent(JTable table,
                    Object value, boolean isSelected,
                    int row, int column) {
                super.getTableCellEditorComponent(table, value, isSelected, row, column);
                textField.setValue(value);
                return textField;
            }
        }
     public class MyDateRenderer extends DefaultTableCellRenderer {
     
            private DateFormat dateFormat;
     
            public MyDateRenderer(String format) {
                dateFormat = new SimpleDateFormat(format);
            }
     
            @Override
            public void setValue(Object value) {
                setText((value == null) ? "" : dateFormat.format(value));
            }
        }
    Le squeltte de la jtable est généré avc netbeans.
    Merci pour votre aide.

  6. #6
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    Jusque là tout va bien, tu utilise bien aussi le SimpleDateFormat pour l'affichage? Dans quelle partie as-tu le mauvais affichage?

Discussions similaires

  1. Probleme avec CAST()
    Par saladin04 dans le forum SQL
    Réponses: 5
    Dernier message: 26/08/2010, 15h34
  2. [Requete] Probleme avec double jointure et cast
    Par guromgd dans le forum Développement
    Réponses: 5
    Dernier message: 04/05/2009, 13h42
  3. Probleme avec un CAST
    Par freud dans le forum SQL
    Réponses: 9
    Dernier message: 02/03/2009, 21h25
  4. Probleme avec fseek
    Par Bjorn dans le forum C
    Réponses: 5
    Dernier message: 04/08/2002, 07h17
  5. [Kylix] probleme avec un imagelist
    Par NicoLinux dans le forum EDI
    Réponses: 4
    Dernier message: 08/06/2002, 23h06

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