Java probleme filtre date + calendar

dioufsou Messages postés 16 Date d'inscription mardi 4 décembre 2007 Statut Membre Dernière intervention 27 août 2009 - 26 août 2009 à 11:01
kirua12 Messages postés 1155 Date d'inscription samedi 17 janvier 2004 Statut Membre Dernière intervention 29 avril 2011 - 27 août 2009 à 14:28
Bonjour,
Je veux mettre au point un filtre par date avec 2 zones de textes et qui affiche un calendrier pour le choix des dates, il doit me permettre de filtrer l'affichage d'une base de donnée je bloc sur ça depuis 2 jours.
Merci d'avance de bien vouloir me repondre

11 réponses

kirua12 Messages postés 1155 Date d'inscription samedi 17 janvier 2004 Statut Membre Dernière intervention 29 avril 2011 7
26 août 2009 à 14:26
Salut,

sur quoi tu bloques ? la requête SQL ? la partie graphique ? autre ?
quel est ton code ?
0
dioufsou Messages postés 16 Date d'inscription mardi 4 décembre 2007 Statut Membre Dernière intervention 27 août 2009
26 août 2009 à 14:39
salut,
non je bloque pas sur la requête sql ni sur la partie graphique, j'arrive pas à sélectionner le jour dans le calendrier.
Si t'as un exemple qui marche, j'aimerai bien le voir stp merci d'avance
0
kirua12 Messages postés 1155 Date d'inscription samedi 17 janvier 2004 Statut Membre Dernière intervention 29 avril 2011 7
26 août 2009 à 14:42
quel calendrier ?
0
dioufsou Messages postés 16 Date d'inscription mardi 4 décembre 2007 Statut Membre Dernière intervention 27 août 2009
26 août 2009 à 15:00
ok, j'essaie de sélectionner des dates à partir d'un calendrier pour faire un filtre par date, le calendrier je l'ai déjà il marche bien, sauf que je ne peux pas sélectionner une date dessus.
et c ça mon problème, le code est super long et moi même j'ai du mal à m'y retrouver, je dois l'optimiser une fois ce problème résolue.

Si tu penses pouvoir m'aider merci d'avance, sinon merci quand même d'avoir regardé
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
kirua12 Messages postés 1155 Date d'inscription samedi 17 janvier 2004 Statut Membre Dernière intervention 29 avril 2011 7
26 août 2009 à 15:08
je reformule : de quel calendrier parles tu ? en swing ? c'est du web ? quel composant ?
0
dioufsou Messages postés 16 Date d'inscription mardi 4 décembre 2007 Statut Membre Dernière intervention 27 août 2009
26 août 2009 à 15:19
en swing
0
kirua12 Messages postés 1155 Date d'inscription samedi 17 janvier 2004 Statut Membre Dernière intervention 29 avril 2011 7
26 août 2009 à 15:34
est ce qu'il te serait possible de fournir plus d'info stp ? du code ? les logs éventuelles ? les erreurs ?
Le calendrier est un composant de base ? hérité ? d'une librairie ?
Que veux tu dire par 'je ne peux pas sélectionner de date' ? quel est le comportement ?

Si tu ne donnes pas d'info, on ne peut rien faire pour t'aider. C'est déjà le 4ème message et je ne sais toujours pas quel est ton problème ...
0
dioufsou Messages postés 16 Date d'inscription mardi 4 décembre 2007 Statut Membre Dernière intervention 27 août 2009
26 août 2009 à 16:01
t'as raison :

void cmbBoxFiltDateREP(java.awt.event.ActionEvent event)
{
this.Calendrier();
this.Connection("SELECT *FROM `REPONSE`" ,JTable2);
}

C'est ça que j'ai implémenter dans mon programme principal.
Je fais apel à la class suivante:

public class JCalendar
extends JPanel {

/**
*
*/
private static final long serialVersionUID = 1L;

private GregorianCalendar _calendar = new GregorianCalendar();

private DateFormatSymbols _dateSymbols = new DateFormatSymbols();

private SimpleDateFormat _formatMY = new SimpleDateFormat("yyyy-MM-dd");

private int _firstDayOfWeek = _calendar.getFirstDayOfWeek();

private final JLabel _monthYear = new JLabel("", SwingUtilities.CENTER);

private final JLabel[] _daysOfWeek = new JLabel[7];

private final JButton[] _daysNumber = new JButton[42];

private final ActionListener _changeMonth = new ActionListener() {
public void actionPerformed(final ActionEvent ae) {
final int nb = "next".equals(ae.getActionCommand()) ? 1: -1;
_calendar.add(Calendar.MONTH, nb);
updateMonthYear();
updateDaysNumber();
System.out.println("ici" + nb);
}
};
private final ActionListener _ChdaysNumber = new ActionListener(){
public void actionPerformed(final ActionEvent ae) {
final int nb = "_daysOfWeek".equals(ae.getActionCommand()) ? 1: -1;
_calendar.add(Calendar.DAY_OF_WEEK_IN_MONTH, nb);
System.out.println("ici1" + nb);
}
};

public JCalendar() {
setLayout(new BorderLayout());
// Month Panel
final JPanel monthPanel = new JPanel();
final JButton previous = new JButton("<<");
previous.addActionListener(_changeMonth);
final JButton next = new JButton(">>");
next.addActionListener(_changeMonth);
next.setActionCommand("next");
_monthYear.setPreferredSize(new Dimension(120, 20));
monthPanel.add(previous);
monthPanel.add(_monthYear);
monthPanel.add(next);
add(monthPanel, BorderLayout.NORTH);
// Day Panel
final JPanel dayPanel = new JPanel();
dayPanel.setLayout(new GridLayout(7, 7));
for (int i = 0; i < 7; ++i)
dayPanel.add(_daysOfWeek[i] = new JLabel("", SwingUtilities.CENTER));
System.out.println("Jour : "+ _daysOfWeek);
for (int i = 0; i < _daysNumber.length; ++i)
{
dayPanel.add(_daysNumber[i] = new JButton());
_daysNumber[i].addActionListener(_ChdaysNumber);
dayPanel.getActionMap();
}
//System.out.println("Jour : "+ _ChdaysNumber);
add(dayPanel, BorderLayout.CENTER);
// Remplissage des composants
updateMonthYear();
updateDaysOfWeek();
updateDaysNumber();
}

// Affiche le mois et l'année en cours
private void updateMonthYear() {
_monthYear.setText(_formatMY.format(_calendar.getTime()));
}

// Affiche les jours de la semaine
private void updateDaysOfWeek() {
final String[] weekDays = _dateSymbols.getShortWeekdays();
for (int i = 1; i < weekDays.length; ++i) {
final int index = (i - 2 + _firstDayOfWeek) % 7 + 1;
_daysOfWeek[i - 1].setText(weekDays[index]);
System.out.println("jour1 : " + _daysOfWeek);
}
}

// Affiche le numéro des jours
private void updateDaysNumber() {
final Date tmp = _calendar.getTime();
_calendar.set(Calendar.DAY_OF_MONTH, 1);
final int firstDay = _calendar.get(Calendar.DAY_OF_WEEK);
final int LocalFirstDay = (firstDay - _firstDayOfWeek + 7) % 7 + 1;
System.out.println("jour2 : " + LocalFirstDay);
boolean full = false;
for (int i = 0; i < _daysNumber.length; ++i) {
//Détermine si le composant est affiché ou non
final boolean isNotEmpty = i < LocalFirstDay - 1 || full;
_daysNumber[i].setVisible(!isNotEmpty);
// Affichage du jour
if (!isNotEmpty) {
final int dayOfMonth = _calendar.get(Calendar.DAY_OF_MONTH);
_daysNumber[i].setText(String.valueOf(dayOfMonth));
_calendar.add(Calendar.DAY_OF_MONTH, 1);
full 1 _calendar.get(Calendar.DAY_OF_MONTH);
}
}
_calendar.setTime(tmp);
System.out.println("jour3 : " + _calendar.get(Calendar.DAY_OF_MONTH));
}
}

Si tu peux y faire quelque chose merci d'avance
0
kirua12 Messages postés 1155 Date d'inscription samedi 17 janvier 2004 Statut Membre Dernière intervention 29 avril 2011 7
27 août 2009 à 09:39
bon, on avance mais tu n'as pas encore répondu à : que veux tu dire par 'je ne peux pas sélectionner de date' ?
0
dioufsou Messages postés 16 Date d'inscription mardi 4 décembre 2007 Statut Membre Dernière intervention 27 août 2009
27 août 2009 à 13:26
je veux qu'une fois un jour sélectionné, que je puisse avoir la date correspondante à ce jour c à dire jour- mois- année
0
kirua12 Messages postés 1155 Date d'inscription samedi 17 janvier 2004 Statut Membre Dernière intervention 29 avril 2011 7
27 août 2009 à 14:28
bon, ça c'est ce que tu veux, ce n'est pas ce qui se passe.
Quel est le comportement ? qu'obtiens-tu en debug ? tu as une valeur ?
0
Rejoignez-nous