Addition sur une date

Soyez le premier à donner votre avis sur cette source.

Snippet vu 5 871 fois - Téléchargée 29 fois

Contenu du snippet

Dans cette petit application je vous représente la possibilité d'additionné des jours sur une date.
Il suffi d?editer une date, et le nombre des jours. Et l?application vous donne la novelle date
Amusez vous bien...

Source / Exemple :


/*

  • dateAnalysing.java
  • Created on May 12, 2009, 11:48:38 AM
  • /
import java.text.DateFormat; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; import java.util.GregorianCalendar; import javax.swing.JOptionPane; public class dateAnalysing extends javax.swing.JFrame { /** Creates new form dateAnalysing */ public dateAnalysing() { initComponents(); } @SuppressWarnings("unchecked") // <editor-fold defaultstate="collapsed" desc="Generated Code"> private void initComponents() { jLabel1 = new javax.swing.JLabel(); jLabel2 = new javax.swing.JLabel(); jLabel3 = new javax.swing.JLabel(); jLabel4 = new javax.swing.JLabel(); jLabel5 = new javax.swing.JLabel(); y1 = new javax.swing.JTextField(); m1 = new javax.swing.JTextField(); d1 = new javax.swing.JTextField(); nbj = new javax.swing.JTextField(); jLabel6 = new javax.swing.JLabel(); ndate = new javax.swing.JTextField(); jButton1 = new javax.swing.JButton(); reset = new javax.swing.JButton(); setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE); setTitle("dates"); setAlwaysOnTop(true); jLabel1.setText("date "); jLabel2.setText("annee"); jLabel3.setText("mois"); jLabel4.setText("jour"); jLabel5.setText("nombre des jours"); y1.setText("2009"); nbj.setText("0"); jLabel6.setText("date finale:"); jButton1.setText("Work"); jButton1.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jButton1ActionPerformed(evt); } }); reset.setText("Reset"); reset.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { resetActionPerformed(evt); } }); javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane()); getContentPane().setLayout(layout); layout.setHorizontalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addContainerGap() .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) .addGroup(layout.createSequentialGroup() .addComponent(jLabel1) .addGap(13, 13, 13)) .addGroup(layout.createSequentialGroup() .addComponent(jLabel5) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED))) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addComponent(nbj, javax.swing.GroupLayout.PREFERRED_SIZE, 39, javax.swing.GroupLayout.PREFERRED_SIZE) .addGroup(layout.createSequentialGroup() .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addComponent(d1, javax.swing.GroupLayout.PREFERRED_SIZE, 39, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(jLabel4)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addComponent(jLabel3) .addComponent(m1, javax.swing.GroupLayout.PREFERRED_SIZE, 39, javax.swing.GroupLayout.PREFERRED_SIZE)))) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) .addComponent(jLabel2) .addComponent(y1, javax.swing.GroupLayout.PREFERRED_SIZE, 39, javax.swing.GroupLayout.PREFERRED_SIZE))) .addGroup(layout.createSequentialGroup() .addComponent(jButton1) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) .addComponent(reset)))) .addGroup(layout.createSequentialGroup() .addGap(11, 11, 11) .addComponent(jLabel6) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) .addComponent(ndate, javax.swing.GroupLayout.PREFERRED_SIZE, 135, javax.swing.GroupLayout.PREFERRED_SIZE))) .addGap(18, 18, 18)) ); layout.setVerticalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addContainerGap() .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(jLabel4, javax.swing.GroupLayout.PREFERRED_SIZE, 14, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(jLabel3) .addComponent(jLabel2)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(d1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(jLabel1) .addComponent(m1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(y1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addGap(3, 3, 3) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(nbj, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(jLabel5)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(jButton1) .addComponent(reset)) .addGap(11, 11, 11) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addComponent(jLabel6) .addComponent(ndate, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) ); pack(); }// </editor-fold> private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) { try{ int yy1=Integer.parseInt(y1.getText()), mm1=Integer.parseInt(m1.getText()), dd1=Integer.parseInt(d1.getText()), nbj1=Integer.parseInt(nbj.getText()); String dy= y1.getText()+"/"+ m1.getText()+"/"+ d1.getText(); // Date s1=new Date(yy1,mm1,dd1); Date s1=new Date(dy); GregorianCalendar calendar = new java.util.GregorianCalendar(); calendar.setTime(s1); calendar.add(Calendar.DATE, nbj1); Date nouveau=calendar.getTime(); DateFormat dateFormat = new SimpleDateFormat("dd/MM/yy"); String result=dateFormat.format(nouveau); ndate.setText(result); }catch(Exception e){ JOptionPane.showMessageDialog(null,e.getMessage()); } } private void resetActionPerformed(java.awt.event.ActionEvent evt) { y1.setText("2009"); m1.setText(""); d1.setText(""); nbj.setText(""); ndate.setText(""); } /**
  • @param args the command line arguments
  • /
public static void main(String args[]) { java.awt.EventQueue.invokeLater(new Runnable() { public void run() { new dateAnalysing().setVisible(true); } }); } // Variables declaration - do not modify private javax.swing.JTextField d1; private javax.swing.JButton jButton1; private javax.swing.JLabel jLabel1; private javax.swing.JLabel jLabel2; private javax.swing.JLabel jLabel3; private javax.swing.JLabel jLabel4; private javax.swing.JLabel jLabel5; private javax.swing.JLabel jLabel6; private javax.swing.JTextField m1; private javax.swing.JTextField nbj; private javax.swing.JTextField ndate; private javax.swing.JButton reset; private javax.swing.JTextField y1; // End of variables declaration }

A voir également

Ajouter un commentaire Commentaires
Messages postés
50
Date d'inscription
mercredi 10 décembre 2008
Statut
Membre
Dernière intervention
1 juillet 2011

Oui pour l’interface graphique, j’utilise le
netbeans 6.5.1,

Vous pouvez le télécharger suivant :
http://www.netbeans.org/downloads/index.html
Messages postés
123
Date d'inscription
mardi 5 août 2003
Statut
Membre
Dernière intervention
26 août 2012
3
De plus tu as utilisé un logiciel WYSIWYG avec génération de code automatique n'est-ce pas ? Parce que le code IHM est totalement illisible ! >_< !
Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
107
Je trouve pas grand intérêt à ta source : il ne s'agit que de l'utilisation de la méthode add du Calendar. Du coup, si tu enlève tout le code de ton interface graphique, ton code se résume à ceci :

int yy1=Integer.parseInt(y1.getText()),
mm1=Integer.parseInt(m1.getText()),
dd1=Integer.parseInt(d1.getText()),
nbj1=Integer.parseInt(nbj.getText());

String dy= y1.getText()+"/"+ m1.getText()+"/"+ d1.getText();

// Date s1=new Date(yy1,mm1,dd1);
Date s1=new Date(dy);
GregorianCalendar calendar = new java.util.GregorianCalendar();

calendar.setTime(s1);
calendar.add(Calendar.DATE, nbj1);

Date nouveau=calendar.getTime();

DateFormat dateFormat = new SimpleDateFormat("dd/MM/yy");
String result=dateFormat.format(nouveau);
ndate.setText(result);

Bref, rien de bien transcendant. Tu devrais plutôt déposer ton code dans les snippets.
Ca peut être utile à ceux qui débutent à la limite (j'ai répondu dernièrement à un membre qui se posait cette question), mais c'est quand même très limité car déjà documenté dans la javaDoc.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.