Comment tester si mon jdatechooser est vide ou non JAVA [Résolu/Fermé]

airdeugifle 2 Messages postés samedi 15 octobre 2016Date d'inscription 29 octobre 2016 Dernière intervention - 15 oct. 2016 à 09:49 - Dernière réponse :  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.
Afficher la suite 
2Messages postés samedi 15 octobre 2016Date d'inscription 29 octobre 2016 Dernière intervention

6 réponses

KX 15086 Messages postés samedi 31 mai 2008Date d'inscriptionModérateurStatut 11 décembre 2017 Dernière intervention - 15 oct. 2016 à 10:25
0
Utile
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.
airdeugifle - 17 oct. 2016 à 19:55
0
Utile
1
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;
KX 15086 Messages postés samedi 31 mai 2008Date d'inscriptionModérateurStatut 11 décembre 2017 Dernière intervention - 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
Utile
1
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;
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
Utile
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();
        
    }