Comment tester si mon jdatechooser est vide ou non JAVA

Résolu/Fermé
airdeugifle Messages postés 1 Date d'inscription samedi 15 octobre 2016 Statut Membre Dernière intervention 29 octobre 2016 - Modifié par KX le 15/10/2016 à 09:58
 airdeugifle - 17 oct. 2016 à 21:41
Bonjour,
je suis sur netbeans 8.1 et j'ai le problème de tester si mon jdatechooser est vide ou non. J'ai utilisé plusieurs méthodes et ça n'abouti pas au teste, résultat(null).
voila mon code:
String datedebut=((JTextFieldDateEditor) jDateChooser1.getDateEditor().getUiComponent()).getText();
String datedebut=((JTextFieldDateEditor) jDateChooser1.getDateEditor()).getText();
Calendar datedebut=jDateChooser1.getCalendar();
Date datedebut=jDateChooser1.getDate();
String datedebut=jDateChooser1.getDate().toString().trim();

if(jTextField12.getText().trim().length()>0 && datedebut.length()==0){
if(jTextField12.getText().trim().length()>0 && datedebut.equals("")){
if(jTextField12.getText().trim().length()>0 && datedebut.isEmpty()){

if(jTextField12.getText().trim().length()>0 && datedebut==null){
requete="Select Date_Entree, Total FROM `reparation` WHERE UT='"+jTextField12.getText().toString()+"' ORDER BY Date_Entree";
}else{
autre requete;
}

Merci de votre aide, je serai reconnaissant.
A voir également:

4 réponses

slt,
Merci pour ton aide.
j'ai trouvé la solution, voila le code:
String requete = null;
    JFreeChart barchart = null;
    try{
        Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
        Connection con = DriverManager.getConnection("jdbc:odbc:STEG");

        SimpleDateFormat sdf =  new  SimpleDateFormat ("dd/MM/yyyy");
        SimpleDateFormat sdf1 =  new  SimpleDateFormat ("MM/dd/yyyy");
        
        
        if ( jDateChooser1.getDate()!=null ) {
            if(jDateChooser2.getDate()!=null){
                String dateDebut = sdf1.format(jDateChooser1.getDate());  
                String dateFin=sdf1.format(jDateChooser2.getDate());
                if(jTextField12.getText().trim().length()>0 ){
                    requete="Select Date_Entree, Total FROM `reparation` WHERE UT='"+jTextField12.getText()+"' AND Date_Entree between #"+dateDebut+"# and #"+dateFin+"# ORDER BY Date_Entree";
                }else{
                    requete="Select DISTINCT UT, SUM(Total) as tt FROM `reparation` WHERE Date_Entree between #"+dateDebut+"# and #"+dateFin+"# GROUP BY UT ORDER BY UT";
                }
                JDBCCategoryDataset dataset=new JDBCCategoryDataset(con,requete);
        
                if(jRadioButton1.isSelected()){
                    barchart=ChartFactory.createLineChart("Dépense Véhicule(s)  "+jTextField12.getText()+" pour la période du "+sdf.format(jDateChooser1.getDate())+" au "+sdf.format(jDateChooser2.getDate()), "Date", "Dépense", dataset, PlotOrientation.VERTICAL, false, true, true);
                    CategoryPlot plot=barchart.getCategoryPlot();
                    plot.setBackgroundPaint(Color.ORANGE);
                    //plot.setRangeGridlinePaint(Color.ORANGE);
                }else{
                    if(jRadioButton2.isSelected()){
                        barchart=ChartFactory.createBarChart("Dépense Véhicule(s)  "+jTextField12.getText()+" pour la période du "+sdf.format(jDateChooser1.getDate())+" au "+sdf.format(jDateChooser2.getDate()), "Date", "Dépense", dataset, PlotOrientation.VERTICAL, false, true, true);
                        CategoryPlot plot=barchart.getCategoryPlot();
                        plot.setBackgroundPaint(Color.ORANGE);
                    }else{
                        JDBCPieDataset data=new JDBCPieDataset(con,requete);
                        barchart=ChartFactory.createPieChart("Dépense Véhicule(s)  "+jTextField12.getText()+" pour la période du "+sdf.format(jDateChooser1.getDate())+" au "+sdf.format(jDateChooser2.getDate()), data, true, true, true);
                        Plot plot1=barchart.getPlot();
                        plot1.setBackgroundPaint(Color.ORANGE);
                    }
                }
            }else{
                JOptionPane.showMessageDialog(null, "Veuillez donner la date fin de la période!");
            }
        }else {
            if(jDateChooser2.getDate()!=null){
                JOptionPane.showMessageDialog(null, "Veuillez donner la date du debut de la période!");
            }else{
                if(jTextField12.getText().trim().length()==0){
                   requete="Select DISTINCT UT, SUM(Total) as tt FROM `reparation` WHERE Total IS NOT NULL GROUP BY UT ORDER BY UT"; 
                }else{
                   requete="Select Date_Entree, Total FROM `reparation` WHERE UT='"+jTextField12.getText().toString()+"' ORDER BY Date_Entree"; 
                }
                JDBCCategoryDataset dataset=new JDBCCategoryDataset(con,requete);
        
                if(jRadioButton1.isSelected()){
                    barchart=ChartFactory.createLineChart("Dépense Véhicule(s)  "+jTextField12.getText(), "Date", "Dépense", dataset, PlotOrientation.VERTICAL, false, true, true);
                    CategoryPlot plot=barchart.getCategoryPlot();
                    plot.setBackgroundPaint(Color.ORANGE);
                    //plot.setRangeGridlinePaint(Color.ORANGE);
                }else{
                    if(jRadioButton2.isSelected()){
                        barchart=ChartFactory.createBarChart("Dépense Véhicule(s)  "+jTextField12.getText(), "Date", "Dépense", dataset, PlotOrientation.VERTICAL, false, true, true);
                        CategoryPlot plot=barchart.getCategoryPlot();
                        plot.setBackgroundPaint(Color.ORANGE);
                    }else{
                        JDBCPieDataset data=new JDBCPieDataset(con,requete);
                        barchart=ChartFactory.createPieChart("Dépense Véhicule(s)  "+jTextField12.getText(), data, true, true, true);
                        Plot plot1=barchart.getPlot();
                        plot1.setBackgroundPaint(Color.ORANGE);
                    }
                }
            }
        }        
        ChartPanel barpanel=new ChartPanel(barchart);
        panelChart.removeAll();
        panelChart.add(barpanel);
        panelChart.validate();

    }catch(Exception e){
        e.printStackTrace();
        
    }
1
KX Messages postés 16733 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 31 janvier 2024 3 015
15 oct. 2016 à 10:25
Bonjour,

Une remarque au préalable, Netbeans introduit un certain nombre de mauvaises habitudes de programmation, notamment avec son code automatique et ses classes qui n'existent pas en Java.

Typiquement un JDateChooser nécessite des plugins (développés par des tiers, potentiellement bogués) pour que le programme fonctionne, alors que des alternatives standards existent comme DatePicker.

Merci donc de préciser les imports que tu as fais puisque vu que ce n'est pas standard, il y a plusieurs classes de même noms qui existent, et qu'on ne sait pas laquelle tu utilises dans ton code.
0
airdeugifle
17 oct. 2016 à 19:55
slt,
désole du retard et merci de me répondre.
voile j'utilise jcalendar 1.4 et voila mes imports:
import java.util.Calendar;
import java.util.Date;
0
KX Messages postés 16733 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 31 janvier 2024 3 015
17 oct. 2016 à 20:15
Tu ne peux pas avoir que cela comme import... déjà il manque les imports de JCalendar.
Comment savoir par exemple le type de jTextField12 ?

De plus, ton code ne peux pas compiler, rien que sur les deux premières lignes tu déclares deux fois la même variable...

Bref, il va falloir être plus précis, si tu veux qu'on t'aide de manière adéquate...
0
Voila les imports:
import com.itextpdf.awt.FontMapper;
import com.itextpdf.text.Document;
import com.itextpdf.text.DocumentException;
import com.itextpdf.text.Element;
import com.itextpdf.text.ExceptionConverter;
import com.itextpdf.text.Font;
import com.itextpdf.text.Image;
import com.itextpdf.text.PageSize;
import com.itextpdf.text.Paragraph;
import com.itextpdf.text.Phrase;
import com.itextpdf.text.Rectangle;
import com.itextpdf.text.pdf.ColumnText;
import com.itextpdf.text.pdf.GrayColor;
import com.itextpdf.text.pdf.PdfContentByte;
import com.itextpdf.text.pdf.PdfPCell;
import com.itextpdf.text.pdf.PdfPTable;
import com.itextpdf.text.pdf.PdfPageEventHelper;
import com.itextpdf.text.pdf.PdfTemplate;
import com.itextpdf.text.pdf.PdfWriter;
import com.lowagie.text.pdf.DefaultFontMapper;
import com.toedter.calendar.JTextFieldDateEditor;
import java.awt.Color;
import java.awt.Frame;
import java.awt.Graphics2D;
import java.awt.geom.Rectangle2D;
import java.io.FileOutputStream;
import java.io.IOException;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.print.PrintService;
import javax.print.PrintServiceLookup;
import javax.swing.JOptionPane;
import javax.swing.JTable;
import javax.swing.table.DefaultTableModel;
import javax.swing.table.TableModel;
//import JCalendar.Date;

import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartPanel;
import org.jfree.chart.JFreeChart;
import org.jfree.chart.plot.CategoryPlot;
import org.jfree.chart.plot.PlotOrientation;
import org.jfree.chart.plot.Plot;
import org.jfree.chart.renderer.category.BarRenderer;
import org.jfree.data.jdbc.JDBCCategoryDataset;
import org.jfree.data.jdbc.JDBCPieDataset;
0
slt,
Voile tout le code:
String requete = null;
    JFreeChart barchart = null;
    try{
        Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
        Connection con = DriverManager.getConnection("jdbc:odbc:STEG");

        SimpleDateFormat sdf =  new  SimpleDateFormat ("dd/MM/yyyy");
        SimpleDateFormat sdf1 =  new  SimpleDateFormat ("MM/dd/yyyy");
        

        if(jTextField12.getText().trim().length()>0 && jDateChooser1.getDate().toString().trim().length()>0){
            requete="Select Date_Entree, Total FROM `reparation` WHERE UT='"+jTextField12.getText()+"' AND Date_Entree between #"+sdf1.format(jDateChooser1.getDate())+"# and #"+sdf1.format(jDateChooser2.getDate())+"# ORDER BY Date_Entree";
        }
        if(jTextField12.getText().trim().length()==0 && jDateChooser1.getDate().toString().trim().length()>0){
            requete="Select DISTINCT UT, SUM(Total) as tt FROM `reparation` WHERE Date_Entree between #"+sdf1.format(jDateChooser1.getDate())+"# and #"+sdf1.format(jDateChooser2.getDate())+"# GROUP BY UT ORDER BY UT";
        }
        
        String datedebut=((JTextFieldDateEditor) jDateChooser1.getDateEditor().getUiComponent()).getText();
        
        if(jTextField12.getText().trim().length()>0 && datedebut.isEmpty()){ 
            requete="Select Date_Entree, Total FROM `reparation` WHERE UT='"+jTextField12.getText().toString()+"' ORDER BY Date_Entree";
        }
        if(jTextField12.getText().trim().length()==0 && jDateChooser1.getDate().toString().trim().length()==0){
            requete="Select DISTINCT UT, SUM(Total) as tt FROM `reparation` WHERE Total IS NOT NULL GROUP BY UT ORDER BY UT";
        }
        
        JDBCCategoryDataset dataset=new JDBCCategoryDataset(con,requete);
        
        if(jRadioButton1.isSelected()){
            barchart=ChartFactory.createLineChart("Dépense Véhicule(s)  "+jTextField12.getText()+" pour la période du "+sdf.format(jDateChooser1.getDate())+" au "+sdf.format(jDateChooser2.getDate()), "Date", "Dépense", dataset, PlotOrientation.VERTICAL, false, true, true);
            CategoryPlot plot=barchart.getCategoryPlot();
            plot.setBackgroundPaint(Color.ORANGE);
           
        }else{
            if(jRadioButton2.isSelected()){
                barchart=ChartFactory.createBarChart("Dépense Véhicule(s)  "+jTextField12.getText()+" pour la période du "+sdf.format(jDateChooser1.getDate())+" au "+sdf.format(jDateChooser2.getDate()), "Date", "Dépense", dataset, PlotOrientation.VERTICAL, false, true, true);
                CategoryPlot plot=barchart.getCategoryPlot();
                plot.setBackgroundPaint(Color.ORANGE);
            }else{
                JDBCPieDataset data=new JDBCPieDataset(con,requete);
                barchart=ChartFactory.createPieChart("Dépense Véhicule(s)  "+jTextField12.getText()+" pour la période du "+sdf.format(jDateChooser1.getDate())+" au "+sdf.format(jDateChooser2.getDate()), data, true, true, true);
                Plot plot1=barchart.getPlot();
                plot1.setBackgroundPaint(Color.ORANGE);
            }
        }
        
        ChartPanel barpanel=new ChartPanel(barchart);
        panelChart.removeAll();
        panelChart.add(barpanel);
        panelChart.validate();

    }catch(Exception e){
        e.printStackTrace();
        
        System.out.println( e.getMessage());
    }
0