Hallo
Die Benutzeroberfläche besteht aus ein Hauptfenster und mehrere innere Fenster, die alle Unterklasse von der Klasse TimesheetinteralFrame sind. Alle anderen Fenster sind OK außer Favoritenliste, von deren Klasse ich eine Methode dir geschickt habe.
Ich schicke dir die Beiden klasse vielleicht kann das helfen.
package de.collogia.collinor.timesheet.gui.bookmarklist;
import java.awt.BorderLayout;
import java.awt.Dimension;
import java.beans.PropertyChangeEvent;
import java.beans.PropertyChangeListener;
import javax.swing.JScrollPane;
import de.collogia.collinor.timesheet.Bookmark;
import de.collogia.collinor.timesheet.Timesheet;
import de.collogia.collinor.timesheet.action.TimesheetSelectionHandler;
import de.collogia.collinor.timesheet.filter.TimesheetFilter;
import de.collogia.collinor.timesheet.gui.TimesheetFrame;
import de.collogia.collinor.timesheet.gui.TimesheetInternalFrame;
import de.collogia.collinor.timesheet.gui.TimesheetView;
import de.collogia.log4j.ColLogger;
import de.collogia.util.ColRes;
/**
* Klasse für die Darstellung der Favoritenliste
*
* @author Klaus Roeder
* @version 2.0
*/
public class TimesheetBookmarklistFrame extends TimesheetInternalFrame {
private static final long serialVersionUID = -1467716427288685869L;
// log4j
private static ColLogger log = (ColLogger) ColLogger
.getLogger(TimesheetBookmarklistFrame.class);
/*
* ******************************************************************************************
* KONSTRUKTOREN
* ******************************************************************************************
*/
/**
* Default Konstruktor Aufbau der graphischen Komponenten
*
* @param view
* Die aktuelle Sicht auf das Timesheet
* @param propertyName
* Eindeutiger Name zur Sicherung und zum Laden der Properties
* @param timesheet
* Das darzustellende Timesheet
* @param restoreProperties
* Flag zur Angabe, ob das Fenster aus den Properties heraus
* restauriert werden soll
* @param timesheetSelectionHandler
* Der Handler für das momentan ausgewählte Timesheet Objekt
*/
public TimesheetBookmarklistFrame(TimesheetFrame parent, TimesheetView view, String propertyName,
Timesheet timesheet, boolean restoreProperties,
TimesheetSelectionHandler timesheetSelectionHandler) {
super(ColRes.getString("timesheetBookmarklist.title", "Favoriten"),
view, propertyName, restoreProperties, true,
timesheetSelectionHandler);
this.parent = parent;
this.timesheet = timesheet;
createComponents();
}
import java.awt.Dimension;
import java.awt.Rectangle;
import javax.swing.Action;
import javax.swing.Icon;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JComponent;
import javax.swing.JInternalFrame;
import javax.swing.JToggleButton;
import javax.swing.border.Border;
import de.collogia.collinor.timesheet.Employee;
import de.collogia.collinor.timesheet.action.TimesheetSelectionHandler;
import de.collogia.collinor.timesheet.filter.TimesheetFilter;
import de.collogia.log4j.ColLogger;
import de.collogia.print.ColPrintHandler;
import de.collogia.util.ColRes;
/**
* Abstraktes Frame für das Auslesen und Speichern von Ressourcen im Timesheet
* @author Bernd Stevens
* @version 2.1
*/
public abstract class TimesheetInternalFrame extends JInternalFrame {
// log4j
private static ColLogger log = (ColLogger)ColLogger.getLogger(TimesheetInternalFrame.class);
public static Dimension maxButtonSize = new Dimension(ColRes.getInt("timesheetFrame.toolbar.buttonSize.width", 25),
ColRes.getInt("timesheetFrame.toolbar.buttonSize.height", 25));
public static Border buttonBorder = new javax.swing.border.EmptyBorder(1, 1, 1, 1);
/*
*******************************************************************************************
* KONSTRUKTOREN
*******************************************************************************************
*/
/**
* Default Konstruktor
* Aufbau der graphischen Komponenten
* @param title Der Titel des Fensters
* @param view Die aktuelle Sicht auf das Timesheet
* @param propertyName Eindeutiger Name zur Sicherung und zum Laden der Properties
* @param restoreProperties Flag zur Angabe, ob das Fenster aus den Properties heraus restauriert werden soll
* @param closeable Flag zur Angabe, ob das Fenster geschlossen werden darf
* @param timesheetSelectionHandler Der Handler für das momentan ausgewählte Timesheet Objekt
*/
public TimesheetInternalFrame(String title, TimesheetView view, String propertyName, boolean restoreProperties,
boolean closeable, TimesheetSelectionHandler timesheetSelectionHandler) {
super(title, true, closeable, true, true);
this.view = view;
this.propertyName = propertyName;
this.timesheetSelectionHandler = timesheetSelectionHandler;
ImageIcon icon = ColRes.getImageIcon("internalFrame.icon", null);
if (icon != null) setFrameIcon(icon);
if (restoreProperties) {
restoreProperties();
if (!isIcon()) setVisible(true);
else getDesktopIcon().setVisible(true);
} else {
setBounds(0,0,200,300);
}
}
/*