import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.io.File;
import java.io.FileInputStream;
import java.io.ObjectInputStream;
import java.util.*;
public class Swing extends JFrame
implements WindowListener, ComponentListener {
/**
* Serial UID
*/
//private static final long serialVersionUID = 666666;
/**
* Variablen
*/
public ArrayList<Activities> reports = new ArrayList<Activities>();
private int breite = 510;
private int hoehe = 500;
public String user;
public String password;
public final String url = "http://bliblablubb";
public int endwahl = 1;
/**
* Grundkomponenten fuer Oberfläche
*/
......
public JPanel pnlTop = new JPanel();
private JButton btnPlus = new JButton("+");
private JButton btnSend = new JButton("Senden");
public JPanel pnlMid = new JPanel();
public JScrollPane scrPnlMid = new JScrollPane(pnlMid, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
private JPanel pnlBottomL = new JPanel (new FlowLayout(FlowLayout.LEFT));
private JPanel pnlBottomR = new JPanel(new FlowLayout(FlowLayout.RIGHT));
private JPanel pnlBottom = new JPanel(new BorderLayout());
public Swing(String u, String p, Boolean online){
/**
* Grundeinstellungen fuer Oberflaeche
*/
super("Blabla");
this.setSize(breite, hoehe);
this.setLayout(new BorderLayout());
this.setMinimumSize(new Dimension(breite, hoehe));
...
this.add(pnlTop, BorderLayout.NORTH);
pnlMid.setLayout( new BoxLayout(pnlMid, BoxLayout.Y_AXIS) );
getSerialization();
this.add(scrPnlMid, BorderLayout.CENTER);
pnlBottomL.add(btnPlus);
pnlBottomR.add(btnSend);
pnlBottomR.add(Box.createRigidArea(new Dimension(5,5)));
pnlBottom.add(pnlBottomL,BorderLayout.WEST);
pnlBottom.add(pnlBottomR, BorderLayout.EAST);
this.add(pnlBottom, BorderLayout.SOUTH);
...
/**
* ActionListener hinzufügen für Buttons
*/
btnPlus.addActionListener(new PlusButtonListener(this));
btnSend.addActionListener(new SendButtonListener(this));
....
public void getSerialization(){
File dateiTest = new File("TimeTracker.ser");
if(dateiTest.exists())
{
try {
ObjectInputStream is = new ObjectInputStream(new FileInputStream("TimeTracker.ser"));
reports = (ArrayList<Activities>) is.readObject();
for (int i = 0; i < reports.size(); i++) {
pnlMid.add(reports.get(i));
}
is.close();
} catch (Exception ex){
ex.printStackTrace();
}
dateiTest.delete();
} else {
reports.add(new Activities(this.getWidth()/12, this));
pnlMid.add(reports.get(reports.size()-1));
}
}
}