abbiamo iniziato oggi lo studio delle interfacce grafiche.
ho creato tre combo box per la data, e vorrei controllare che nn siano sbagliate (ad esempio 31 febbraio).
ho creato questo metodo:
poi ho messo il codice da eseguire in un if:codice:private static boolean controllaData(String data){ int mese=Integer.parseInt(data.substring(0,2)); //ERRORE int giorno=Integer.parseInt(data.substring(3,5)); if(mese==2 && giorno>29){ return false; } if(mese==4 && giorno>31){ return false; } if(mese==6 && giorno>31){ return false; } if(mese==9 && giorno>31){ return false; } if(mese==11 && giorno>31){ return false; } else{ return true; } }
nessun errore in compilazione, ma mi da degli errori in esecuzione.codice:private void jButton1MouseClicked(java.awt.event.MouseEvent evt) { String data=jComboBox1.getSelectedItem().toString()+"/"+jComboBox2.getSelectedItem().toString()+"/"+jComboBox3.getSelectedItem().toString(); if(controllaData(data)){ //ERRORE Persona p=new Persona(jTextField1.getText(), jTextField2.getText(), jTextField3.getText(), jTextField4.getText(), jTextField5.getText()); jTextField1.setText(""); jTextField2.setText(""); jTextField3.setText(""); jTextField4.setText(""); jTextField5.setText(data); jTextField6.setText(Persona.matricola(p)); } else{ JOptionPane.showMessageDialog(null, "rifai tutto!!"); } }
nello specifico alle righe dove ho messo il commento ERRORE.
ma nn riesco a capire dove ho sbagliato.

Rispondi quotando