Riporto di seguito il codice della classe Esempio:
codice:
import javax.swing.*;
import javax.swing.text.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.JOptionPane;
public class Esempio extends JFrame implements ActionListener{
public static void main (String [] args){
Esempio Esp = new Esempio();
Esp.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Esp.setVisible(true);
Esp.toFront();
}
private JComboBox jcbox_giorno;
private JComboBox jcbox_mese;
private JTextField jtf_anno;
private String[] items_giorno;
private String[] items_mese;
protected final Font font = new Font("Verdana",Font.PLAIN,10);
private String data_Esempio;
public Esempio(){
super();
setTitle("Esempio");
items_giorno = new String[32];
items_giorno[0]= "";
items_giorno[1]= "01";
items_giorno[2]= "02";
items_giorno[3]= "03";
items_giorno[4]= "04";
items_giorno[5]= "05";
items_giorno[6]= "06";
items_giorno[7]= "07";
items_giorno[8]= "08";
items_giorno[9]= "09";
items_giorno[10]= "10";
items_giorno[11]= "11";
items_giorno[12]= "12";
items_giorno[13]= "13";
items_giorno[14]= "14";
items_giorno[15]= "15";
items_giorno[16]= "16";
items_giorno[17]= "17";
items_giorno[18]= "18";
items_giorno[19]= "19";
items_giorno[20]= "20";
items_giorno[21]= "21";
items_giorno[22]= "22";
items_giorno[23]= "23";
items_giorno[24]= "24";
items_giorno[25]= "25";
items_giorno[26]= "26";
items_giorno[27]= "27";
items_giorno[28]= "28";
items_giorno[29]= "29";
items_giorno[30]= "30";
items_giorno[31]= "31";
items_mese = new String[13];
items_mese[0]= "";
items_mese[1]= "01";
items_mese[2]= "02";
items_mese[3]= "03";
items_mese[4]= "04";
items_mese[5]= "05";
items_mese[6]= "06";
items_mese[7]= "07";
items_mese[8]= "08";
items_mese[9]= "09";
items_mese[10]= "10";
items_mese[11]= "11";
items_mese[12]= "12";
LimitedStyledDocument lsd_anno = new LimitedStyledDocument(4);
JPanel panelGeneral = new JPanel();
setFont(font);
JPanel panelSub = new JPanel();
JLabel testo = new JLabel("data:");
testo.setFont(font);
jcbox_giorno = new JComboBox(items_giorno);
jcbox_giorno.setFont(font);
JLabel testo2 = new JLabel("/");
testo2.setFont(font);
jcbox_mese = new JComboBox(items_mese);
jcbox_mese.setFont(font);
JLabel testo3 = new JLabel("/");
testo3.setFont(font);
jtf_anno = new JTextField(lsd_anno,"",4);
jtf_anno.setFont(font);
JButton jb_generaFlusso = new JButton("Genera il file");
jb_generaFlusso.addActionListener(new ActionListener(){
public void actionPerformed (ActionEvent e) {
Object Obj_getGiorno = jcbox_giorno.getSelectedItem();
String getGiorno = ""+Obj_getGiorno;
Object Obj_getMese = jcbox_mese.getSelectedItem();
String getMese = ""+Obj_getMese;
String getAnno = jtf_anno.getText();
if(getGiorno.equals("") || getMese.equals("") || getAnno.equals("")){
JOptionPane.showMessageDialog(null,"Compilare tutti i campi","A V V I S O",JOptionPane.WARNING_MESSAGE);
}else{
data_Esempio = getGiorno + "/" + getMese + "/" + getAnno;
System.out.println(data_Esempio);
}
}});
panelSub.setLayout(new FlowLayout(FlowLayout.LEFT));
panelSub.add(testo);
panelSub.add(jcbox_giorno);
panelSub.add(testo2);
panelSub.add(jcbox_mese);
panelSub.add(testo3);
panelSub.add(jtf_anno);
panelSub.add(jb_generaFlusso);
panelGeneral.setLayout(new BorderLayout());
panelGeneral.add(BorderLayout.NORTH,panelSub);
setContentPane(panelGeneral);
setSize(400,200);
pack();
}
public void actionPerformed(ActionEvent e) {
}
class LimitedStyledDocument extends DefaultStyledDocument {
int maxCharacters;
public LimitedStyledDocument(int maxChars) {
maxCharacters = maxChars;
}
public void insertString(int offs, String str, AttributeSet a) throws BadLocationException {
if ((getLength() + str.length()) <= maxCharacters)
super.insertString(offs, str, a);
else
Toolkit.getDefaultToolkit().beep();
}
}
}