import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.ComponentOrientation;
import java.awt.FlowLayout;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Calendar;
import java.util.GregorianCalendar;
import java.util.Locale;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.plaf.BorderUIResource;
public class Demo implements ActionListener {
Calendar jetzt;
private static final long serialVersionUID = 1L;
public Demo()
{
Anzeige();
}
public void Anzeige()
{
JFrame Fenster = new JFrame("Kalender");
JPanel pan0 = new JPanel();
JPanel pan1 = new JPanel();
JPanel pan2 = new JPanel();
pan0.setLayout(new BorderLayout());
pan1.setLayout(new FlowLayout());
pan2.setLayout(new GridLayout(6,8));
pan2.setBorder(BorderUIResource.getBlackLineBorderUIResource());
String[] Mon = {"Januar", "Februar", "März", "April", "Mai", "Juni", "Juli", "August", "September","Oktober","November","Dezember"};
String[] J = {"2011", "2012", "2013", "2014", "2015", "2016", "2017", "2018"};
JComboBox Monat = new JComboBox(Mon);
JComboBox Jahr = new JComboBox(J);
Calendar jetzt = new GregorianCalendar(Locale.GERMAN);
int AktMonatZahl = jetzt.get(Calendar.MONTH) + 1;
int AktJahr = jetzt.get(Calendar.YEAR);
int AktTag = jetzt.get(Calendar.DAY_OF_MONTH);
String AktMonatText = null;
switch (AktMonatZahl) {
case 1:
AktMonatText=Mon[0];
break;
case 2:
AktMonatText=Mon[1];
break;
case 3:
AktMonatText=Mon[2];
break;
case 4:
AktMonatText=Mon[3];
break;
case 5:
AktMonatText=Mon[4];
break;
case 6:
AktMonatText=Mon[5];
break;
case 7:
AktMonatText=Mon[6];
break;
case 8:
AktMonatText=Mon[7];
break;
case 9:
AktMonatText=Mon[8];
break;
case 10:
AktMonatText=Mon[9];
break;
case 11:
AktMonatText=Mon[10];
break;
case 12:
AktMonatText=Mon[11];
break;
}
Monat.setSelectedItem(AktMonatText);
Jahr.setSelectedItem(AktJahr);
pan1.add(Monat);
pan1.add(Jahr);
JLabel[] Head = new JLabel[7];
String[] Ueberschrift = {"Mo","Di","Mi","Do","Fr","Sa","So"};
for(int i=0; i<Ueberschrift.length; i++)
{
Head[i] = new JLabel(Ueberschrift[i]);
Head[i].setBackground(Color.WHITE);
Head[i].setOpaque(true);
pan2.add(Head[i]);
}
JLabel[] Body = new JLabel[36];
String[] Juli2011 = {"","","","","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19","20","21","22","23","24","25","26","27","28","29","30","31"};
for(int j=0; j<Juli2011.length; j++)
{
Body[j] = new JLabel(Juli2011[j]);
pan2.add(Body[j]);
}
pan2.setComponentOrientation(ComponentOrientation.LEFT_TO_RIGHT);
pan0.add(pan1, BorderLayout.NORTH);
pan0.add(pan2, BorderLayout.CENTER);
Fenster.add(pan0);
Fenster.pack();
Fenster.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Fenster.setResizable(false);
Fenster.setVisible(true);
}
public static void main(String[] args) {
new Demo();
}
@Override
public void actionPerformed(ActionEvent ev) {
// hier soll etwas passieren, wenn das Label gedrückt wird.
// geht es überhaupt mit einem JLabel oder muß ich einen JButton nehmen ?
// JLabel habe ich wegen der Optik genommen.
}
}