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 :

Récupérer date sélectionnée de JCalendar


Sujet :

Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Février 2008
    Messages
    64
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations forums :
    Inscription : Février 2008
    Messages : 64
    Par défaut Récupérer date sélectionnée de JCalendar
    bonsoir tout le monde


    je veux récupérer date sélectionnée de JCalendar et j'arrive pas

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    import com.toedter.calendar.*;
    ...
    ....
     
    JCalendar calendar = new JCalendar();
    calendar.setBounds(960,10,230,200);
    contenu2.add(calendar);
     
    String date = calendar.getDate().toString //====> ça mache pas
    merci pour l'aide d'avance

  2. #2
    Modérateur

    Avatar de Robin56
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juin 2009
    Messages
    5 297
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Juin 2009
    Messages : 5 297
    Par défaut
    C'est ce JCalendar que tu utilises : ici ? (ce n'est pas un objet de base de Java)

    Donc premièrement regarde les librairies que tu as téléchargé, tu avais peut être un exemple test.
    Ensuite, si tu essayes de récupérer la date directe comme ça, c'est logique. Tes actions sur la modification du JCalendar ne sont pas prises en compte puisque tu n'as pas assigné de Listener à ton composant.

    Il y a un vieil exemple ici.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    MyDateListener listener;
    JCalendar calendar = new JCalendar();
    calendar.addDateListener(listener);
    Et tu as ta classe listener qui a cette structure là :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    private class MyDateListener  implements DateListener
    {
     
      public void dateChanged( DateEvent e)
      {
        Calendar c = e.getSelectedDate();
        if (c != null) {
    	System.out.println(c.getTime());
        }
        else {
    	System.out.println("No time selected.");
        }
      }
    }
    Responsable Java de Developpez.com (Twitter et Facebook)
    Besoin d'un article/tutoriel/cours sur Java, consulter la page cours
    N'hésitez pas à consulter la FAQ Java et à poser vos questions sur les forums d'entraide Java
    --------
    Architecte Solution
    LinkedIn : https://www.linkedin.com/in/nicolascaudard/

  3. #3
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Février 2008
    Messages
    64
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations forums :
    Inscription : Février 2008
    Messages : 64
    Par défaut
    merci pour la réponse
    pour les liens , c'est exactement ça...mais il reconnait pas DateListener!!!!

  4. #4
    Modérateur

    Avatar de Robin56
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juin 2009
    Messages
    5 297
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Juin 2009
    Messages : 5 297
    Par défaut
    Cet exemple était "vieux" comme je l'ai signalé mais le principe doit être semblable. Dans la Javadoc de JCalendar, je vois qu'il existe parcontre le addPropertyChangeListener

    Suite à plusieurs recherche sur le net (source) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    MyPropertyChangeListener listener;
    JCalendar calendar = new JCalendar();
    calendar.addPropertyChangeListener(listener);
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    private class MyDateListener  implements PropertyChangeListener {
      public void propertyChange(PropertyChangeEvent evt) {
         if (evt.getPropertyName().equals("calendar")) {
           Calendar c = (Calendar) evt.getNewValue();
           // ...
        }
      }  
    }
    Responsable Java de Developpez.com (Twitter et Facebook)
    Besoin d'un article/tutoriel/cours sur Java, consulter la page cours
    N'hésitez pas à consulter la FAQ Java et à poser vos questions sur les forums d'entraide Java
    --------
    Architecte Solution
    LinkedIn : https://www.linkedin.com/in/nicolascaudard/

  5. #5
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Février 2008
    Messages
    64
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations forums :
    Inscription : Février 2008
    Messages : 64
    Par défaut
    ça marche pas toujours , ce que je veux c'est juste récupérer la date et la mettre dans une variable ( getText(); ou getTime());

  6. #6
    Membre confirmé
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mai 2007
    Messages
    132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2007
    Messages : 132
    Par défaut
    Hello,

    La solution proposée par Robin56 est bonne. Tu peux rajouter un JTextField :

    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
    private JCalendar calendar = new JCalendar();
    	private JTextField dateField = new JTextField(7);
     
    	public TestCalendar() {		
    		super("Test JCalendar");
    		setDefaultCloseOperation(EXIT_ON_CLOSE);  
    	    JPanel content = new JPanel();
     
    		calendar.setBounds(960,10,230,200);
    		content.add(calendar);		
    		content.add(dateField);
    		MyDateListener listener = new MyDateListener();
    		calendar.addPropertyChangeListener(listener);			
    		setContentPane(content);
    		pack();
    	    setVisible(true);		
    	}
     
    	public static void main(String[] args) {
    		TestCalendar cal = new TestCalendar();
    	}
     
    	private class MyDateListener implements PropertyChangeListener {
    		public void propertyChange(PropertyChangeEvent evt) {
    			if (evt.getPropertyName().equals("calendar")) {
    				DateFormat df = DateFormat.getDateInstance(DateFormat.LONG, calendar.getLocale());
    		        dateField.setText(df.format(calendar.getDate()));
    			}
    		}
    	}
    Ensuite tu as juste à faire un dateField.getText() pour récupérer la date formatée.

    A+

  7. #7
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2011
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2011
    Messages : 11
    Par défaut
    Salut,

    Une fois tu as intégré ton calendrier dans ton interface graphique, essaie de tester avec une zone de texte (JTextField). Le principe est que, une fois tu cliques sur un bouton du calendrier, la date s'affiche dans la zone de texte.
    Voici le code que tu devras mettre dans la méthode constructeur de ta fenêtre (JFrame) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    // private org.freixas.jcalendar.JCalendar Calendrier; --> déclaration préalable
    // de ton calendrier 
     
        Calendrier.addDateListener(new DateListener(){  
        public void dateChanged(DateEvent e)
        {
        // Traitement --> récupérer la date 
     
            test.setText(Calendrier.getDate().toString());
     
        } 
        });
    Bonne journée !

  8. #8
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2012
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2012
    Messages : 7
    Par défaut
    Salut,
    désolé d'up ce vieux sujet qui date d'un an mais j'ai un petit problème :
    J'essaie comme vous de recuperer une date de mon JCalendar et j'ai opté pour la solution de younesagma :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
        Calendrier.addDateListener(new DateListener(){  
        public void dateChanged(DateEvent e)
        {
        // Traitement --> récupérer la date 
     
            test.setText(Calendrier.getDate().toString());
     
        } 
        });
    le hic, c'est qu'il faut que j'importe des packages mais Eclipse me les refuse. Je ne sais pas quoi faire...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    import org.freixas.jcalendar.DateEvent;
    import org.freixas.jcalendar.DateListener;
    import org.freixas.jcalendar.JCalendar;
    Un coup de main serait le bienvenue, merci d'avance.

  9. #9
    Modérateur
    Avatar de wax78
    Homme Profil pro
    R&D - Palefrenier programmeur
    Inscrit en
    Août 2006
    Messages
    4 096
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : R&D - Palefrenier programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2006
    Messages : 4 096
    Par défaut
    Dans les propriétés du projet, dans le Java Build Path, librairies tu as bien ajouté le jar de JCalendar ???
    (Les "ça ne marche pas", même écrits sans faute(s), vous porteront discrédit ad vitam æternam et malheur pendant 7 ans)

    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  10. #10
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2012
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2012
    Messages : 7
    Par défaut
    Oui oui, j'ai bien ajouté le Jar...

  11. #11
    Modérateur
    Avatar de wax78
    Homme Profil pro
    R&D - Palefrenier programmeur
    Inscrit en
    Août 2006
    Messages
    4 096
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : R&D - Palefrenier programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2006
    Messages : 4 096
    Par défaut
    Ok, donc qu'entends tu par 'mais Eclipse me les refuse' ? L'erreur qu'il t'indique.
    (Les "ça ne marche pas", même écrits sans faute(s), vous porteront discrédit ad vitam æternam et malheur pendant 7 ans)

    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

Discussions similaires

  1. [Débutant] Récupérer la date sélectionnée dans un contrôle Calendar
    Par Afaf001 dans le forum ASP.NET
    Réponses: 1
    Dernier message: 21/08/2013, 13h06
  2. Fullcalendar, récupérer la date sélectionnée
    Par laipreu dans le forum jQuery
    Réponses: 6
    Dernier message: 17/10/2011, 10h17
  3. récupérer date sélectionnée de JDateChooser
    Par claire13 dans le forum Collection et Stream
    Réponses: 3
    Dernier message: 22/04/2008, 21h50
  4. Réponses: 12
    Dernier message: 12/10/2005, 14h34
  5. Réponses: 11
    Dernier message: 23/07/2002, 14h33

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