/*alle nötigen imports*/
public class Startfenster extends JFrame {
static JFrame startfenster;
private int i;
private JButton but = new JButton ("Start");
private JLabel [] lab = new JLabel [4];
private JRadioButton [] rechenart = new JRadioButton [3];
/*weitere JRadioButtons*/
private String upper = new String ("+");
private String lower = new String ("-");
private String up = upper.toUpperCase();
private String low = lower.toLowerCase();
private String [] stdStrLabel = {"Rechenart", "Zahlenbereich", "Anzahl Aufgaben", "Schwierigkeit"};
private String [] stdStrRechenart = {"+", "-", up+"/"+low};
/*weiter Strings*/
private String [] auswahl = new String [4];
private static final Color transparenz = new Color (243,90,93,30);
Font stdFont = new Font ("Arial", Font.BOLD, 30);
Font radFont = new Font ("Arial", Font.ITALIC, 25);
// Konstruktor ------------------------------------------------------
Startfenster (String title){
startfenster = new JFrame (title);
Hintergrund background = new Hintergrund();
startfenster.setDefaultCloseOperation(WindowConstants.DO_NOTHING_ON_CLOSE);
startfenster.setResizable (false);
startfenster.setContentPane(background);
background.setSize(1280, 720);
background.setPreferredSize(new Dimension (1280, 720));
startfenster.getContentPane().setLayout(null);
startfenster.pack();
startfenster.setLocation(Rechenmeister.d.width/2 - startfenster.getSize().width/2, Rechenmeister.d.height/2 - startfenster.getSize().height/2);
// Variablen initialisieren -------------------------------------
for (i = 0; i < lab.length; i++){
lab [i] = new JLabel (stdStrLabel [i]);
lab [i].setFont (stdFont);
}
for (i = 0; i < rechenart.length; i++){
if (i == 0) {rechenart [i] = new JRadioButton(""+stdStrRechenart [i], true);}
else {rechenart [i] = new JRadioButton(""+stdStrRechenart [i]);}
rechenart [i].setFont(radFont);
rechenart [i].addActionListener(new Auswahl());
rechenart [i].setOpaque(false);
if (i == 2) {rechenart [i].setActionCommand("+ und -");}
}
/*weitere JRadioButtons gleiches Schema*/
//Button-Groups ----------------------------------------------------------------------------------------------------------------------
ButtonGroup grRechenart = new ButtonGroup();
for (i = 0; i < rechenart.length; i++) {grRechenart.add(rechenart[i]);}
/*weitere ButtonGroups*/
but.setFont(stdFont);
//Rechenarten -----------------------------------------------------------------------------------------------------------
JPanel panelRechenart = new JPanel (null);
//panelRechenart.setOpaque(transparenz);
panelRechenart.setBackground(transparenz);
panelRechenart.setSize((startfenster.getContentPane().getSize().width/12)*5, startfenster.getContentPane().getSize().height/7);
panelRechenart.setBorder(BorderFactory.createLineBorder(Color.white));
startfenster.getContentPane().add(panelRechenart);
panelRechenart.setLocation(20, 20);
//Auswahl ---------------------------------------------------------------------------------------------
JPanel auswahlRechenart = new JPanel (new GridLayout (1,3));
auswahlRechenart.add(rechenart [0]);
auswahlRechenart.add(rechenart [1]);
auswahlRechenart.add(rechenart [2]);
auswahlRechenart.setSize(panelRechenart.getSize().width/2, panelRechenart.getSize().height);
panelRechenart.add(auswahlRechenart);
auswahlRechenart.setLocation(panelRechenart.getSize().width/2, 0);
auswahlRechenart.setOpaque(false);
//Label -----------------------------------------------------------------------------------------------
lab[0].setSize (panelRechenart.getSize().width/2, panelRechenart.getSize().height);
panelRechenart.add(lab[0]);
/*weiter Panels mit gleichem Schema*/
//Button ---------------------------------------------------------------------------------------------------------------------
but.setSize(startfenster.getContentPane().getSize().width/8, startfenster.getContentPane().getSize().height/12);
startfenster.getContentPane().add(but);
but.setLocation((panelAufgaben.getSize().width/2 + 20) - but.getSize().width/2, startfenster.getContentPane().getSize().height - (panelAufgaben.getSize().height + but.getSize().height));
but.addActionListener(new Start ());
// Listener -----------------------------------------------------
startfenster.addWindowListener(new FensterSchließen ());
startfenster.setVisible (true);
}
class Start implements ActionListener {
@Override
public void actionPerformed (ActionEvent e) {
String s = e.getActionCommand ();
if (s.equals ("Start")) {
for (i = 0; i < rechenart.length; i++){
if (rechenart [i].isSelected () == true){
auswahl [0] = rechenart [i].getActionCommand ();
}
}
for (i = 0; i < bereich.length; i++){
if (bereich [i].isSelected () == true){
auswahl [1] = bereich [i].getActionCommand ();
}
}
for (i = 0; i < aufgaben.length; i++){
if (aufgaben [i].isSelected() == true){
auswahl [2] = aufgaben [i].getActionCommand();
}
}
for (i = 0; i < schwierigkeit.length; i++){
if (schwierigkeit [i].isSelected() == true){
auswahl [3] = schwierigkeit [i].getActionCommand();
}
}
Startfenster.startfenster.dispose();
rechnung = new Aufgaben(auswahl [0], auswahl [1], auswahl [2], auswahl [3]);
new Rechenfenster (Rechenmeister.title);
}
}
}
}