import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
import java.applet.Applet;
public class notenrechner extends Applet {
// Anfang Variablen
//Layout-Variablen
JLabel[] l_fach;
JPanel[] p_noten;
JTextField[][] t_ein_note_m, t_ein_note_s;
JTextField[] t_note_fach;
JTextField t_aus_ges;
JButton b_berechnen;
//Ende Layout-Variablen
// Ende Variablen
public void init() {
// Anfang Komponenten
//Variablen
int f = 16; //gibt Zahl der Fächer an
int n = 10; //gibt Zahl der möglichen einzugebenden Noten an
int farbe = 0; //sorgt für abwechselnde Farbgebung 0=grau, 1=weis
//Ende Variablen
//Initialisierung Fächer-JLabels
l_fach = new JLabel[f];
//Notenfelder
p_noten = new JPanel[f];
t_ein_note_m = new JTextField[f][n];
t_ein_note_s = new JTextField[f][n];
t_note_fach = new JTextField[f];
//"Bestückung" der Arrays
for(int i = 0; i < f; i++){
String fach ="";
//Erstellt Fächer Beschriftung
switch (i) {
//Inahlt zu verkürzung entfernt
// Hier werden nur den Labels beschriftungen zu gewiesen
}
l_fach[i] = new JLabel(fach);
//Notenfelder
p_noten[i] = new JPanel();
t_note_fach[i] = new JTextField(4);
t_note_fach[i].setEditable(false);
for(int i2 =0; i2<n; i2++){
t_ein_note_m[i][i2] = new JTextField(2);
t_ein_note_s[i][i2] = new JTextField(2);
}
}
//Ende "Arraybestückung"
// Ende Komponenten
//Layoutmanager
GridBagLayout gbl = new GridBagLayout();
GridBagConstraints gbc = new GridBagConstraints();
setLayout(gbl);
//Initialisierung Komponenten
//Arrayeinsetzung
for(int i = 0; i < f; i++){
//JLabels
gbc = makegbc(0, i, 1, 1);
gbc.weightx = 0;
gbc.weighty = 0;
gbc.anchor = GridBagConstraints.WEST;
gbc.fill = GridBagConstraints.BOTH;
gbl.setConstraints(l_fach[i], gbc);
add(l_fach[i]);
//Ende JLabels
//Notenfelder
p_noten[i].setLayout(gbl);
if(farbe == 0){
p_noten[i].setBackground(Color.lightGray);
farbe = 1;
}
else
farbe = 0;
//Mündliche Noten Eingabe
JLabel l_muendlich = new JLabel("Mündliche Noten");
gbc = makegbc(0,0,1,1);
gbl.setConstraints(l_muendlich, gbc);
p_noten[i].add(l_muendlich);
for(int i2=0; i2<n; i2++){
gbc = makegbc(i2, 0, 1, 1);
gbc.weightx = 0;
gbc.weighty = 0;
gbc.anchor = GridBagConstraints.CENTER;
gbc.fill = GridBagConstraints.NONE;
gbl.setConstraints(t_ein_note_m[i][i2], gbc);
p_noten[i].add(t_ein_note_m[i][i2]);
}
//JLabel für Gesamtnoten
JLabel l_note_fach = new JLabel("Gesammtnote");
gbc = makegbc(n, 0, 1, 1);
gbc.weightx = 0;
gbc.weighty = 0;
gbc.anchor = GridBagConstraints.CENTER;
gbc.fill = GridBagConstraints.NONE;
gbl.setConstraints(l_note_fach, gbc);
p_noten[i].add(l_note_fach);
//Schriftliche Noteneingabe
JLabel l_schriftlich = new JLabel("Schriftliche Noten");
gbc = makegbc(0,1,1,1);
gbl.setConstraints(l_schriftlich, gbc);
p_noten[i].add(l_schriftlich);
for(int i2=0; i2<n; i2++){
gbc = makegbc(i2, 1, 1, 1);
gbc.weightx = 0;
gbc.weighty = 0;
gbc.anchor = GridBagConstraints.CENTER;
gbc.fill = GridBagConstraints.NONE;
gbl.setConstraints(t_ein_note_s[i][i2], gbc);
p_noten[i].add(t_ein_note_s[i][i2]);
}
//JTextField gesamt ausgabe
gbc = makegbc(n, 1, 1, 1);
gbc.anchor = GridBagConstraints.CENTER;
gbc.fill = GridBagConstraints.NONE;
gbl.setConstraints(t_note_fach[i], gbc);
p_noten[i].add(t_note_fach[i]);
//JPanel Platzierung
gbc = makegbc(1, i, 1, 1);
gbc.weightx = 0;
gbc.weighty = 0;
gbc.anchor = GridBagConstraints.WEST;
gbc.fill = GridBagConstraints.BOTH;
gbl.setConstraints(p_noten[i], gbc);
add(p_noten[i]);
//Ende Notenfelder
}
//Ende Arrayeinsetzung
//Ende Initialisierung
}
// Anfang Ereignisprozeduren
// Ende Ereignisprozeduren
//Hilfsmittel Methoden
private GridBagConstraints makegbc(int x, int y, int width, int height) {
GridBagConstraints gbc = new GridBagConstraints();
gbc.gridx = x;
gbc.gridy = y;
gbc.gridwidth = width;
gbc.gridheight = height;
gbc.insets = new Insets(1, 1, 1, 1);
return gbc;
}
//Ende Hilfsmittel-Methoden
}