JList |
Anikin
Grünschnabel
Dabei seit: 19.09.2007
Beiträge: 5
|
|
Guten Abend miteinander! Habe eine Aufgabe bekommen von meiner Dozentin für Programmieren und weiß nicht wie und wo ich anfangen soll.
Von Bestehen dieser Aufgabe hängt leider mein Studium ab!
Lernziele:
1. Einarbeitung in ein Framework
2. Swing-Komponenten. JFrame, JTabbedPane, JMenuBar, JOptionPane, JFileChooser, etc.
3. Event-Behandlung
4. JList mit AbstractListModel
5. Streams
6. Dokumentation
Aufgabe:
1. Aufgabe (5 Pkt) : Layout Fenster
Entwickeln Sie ein swing-Fenster, dass drei Karteikarten (JTabbedPane) enthält, in denen Namen alphabetisch sortiert angezeigt werden. Dabei werden die Personen so aufgeteilt, dass drei Gruppen entstehen, nämlich die Gruppen: "Geburtstag vorbei ", "Geburtstag heute" und "Geburtstag demnächst".
Die Namen der Personen weden bei Start des Programms aus einer Datei eingelesen. Das Fenster sollte so ähnlich aussehen wie im Bild angezeigt.
Name und Geburtstag werden in einer JList dargestellt.
Denken Sie daran, neu erfasste und geänderte Personen in der jeweiligen Karteikarte richtig einzuordnen.
2. Aufgabe (5 Pkt) : Menüleiste
Das Fenster erhält eine Menüleiste mit folgenden Menüs:
* Menüleiste mit den Menüpunkten
o Datei mit den Items:
+ öffnen - eine neue Personendatei wird geladen.
+ speichern - die Personendaten werden in eine Datei zurückgeschrieben..
+ quit - die Anwendung wird beendet.
o Person mit den Items:
+ einfügen - Daten für eine neue Person werden eingefügt, wobei der Benutzer die Daten über ein Dialogfenster eingibt.
+ ändern - Daten einer erfassten Person werden in einem Dialogfenster dargestellt, so dass der Benutzer diese ändern kann.
+ löschen - Name einer erfassten Person wird in einem Dialogfenster angezeigt, so dass der Benutzer diese löschen kann.
Legen Sie die Menüleiste als eigene Top-Level-Klasse an: class MenueLeiste extends JMenuBar{ ... }
Dialoge werden über die Klassen JDialog oder JOptionPane realisiert.
JOptionPane.showInputDialog( ... );
JOptionPane.showConfirmDialog( ... );
JOptionPane.showMessageDialog( ... );
Um mehrere Eingaben über die JOptionPane zu erfassen, wird ein JPanel mit RadioButton und Textfeldern an das Dialogobjekt übergeben.
Aufgabe 3 (10 Pkt): JList mit AbstractListModel
Auf jeder Karteikarte wird eine JList dargestellt (mit ScrollPane).
Die Daten, die in der JList angezeigt werden, werden über ein AbstractListModel bereit gestellt.
Legen Sie für das AbstractListModel eine eigene Klasse (java-Datei) an.
Aufgabe 4 (5 Pkt): Streams
Die Namen werden aus einer Datei gelesen und in eine Datei gespeichert. Dateinamen sind über den JFileChooser beliebig auswählbar.
Gelöschte Namen werden erst dann in der Datei gelöscht, wenn der Menüpunkt Datei ->speichern ausgewählt wurde.
Die Datei enthält außer den Namen zu jeder Person auch den Geburstag.
Legen Sie eine eigene Klasse an, die Methoden zur Streambehandlung (Datei schreiben, Datei lesen) enthält, bzw. verwenden Sie Ihre Klasse aus Prog 1.
Aufgabe 5 (5 Pkt): Datumsangaben in Fußzeile
Durch Selektion einer bestimmten Person werden in einer Fußzeile folgende Daten angezeigt:
o Name der Person,
o Geburtsdatum,
o Wochentag des Tages der Geburt
o Anzahl der berechneten Tage seit der Geburt (die Person ist nnn Tage alt)
Beispiel: Lisa Friendly, geboren am 8.11.1979 (ein Donnerstag) nun XXX Tage alt.
Aufgabe 6 (5 Pkt): Threads
In der Titelleiste des Fensters wird zusätzlich Datum und Uhrzeit (GregorianCalendar) angezeigt.
Legen Sie für die Anzeige der Uhrzeit eine eigene runnable Klasse (java-Datei) an.
|
|
19.09.2007 16:48 |
|
|
Tobias
Routinier
Dabei seit: 18.09.2006
Beiträge: 324
|
|
Was erwartest du hier von uns?
Lese dich erst in Java ein. Wenn du ein bisschen über die Sprache Bescheid weißt, kannst du mit Swing beginnen.
http://www.javabuch.de/ ist eine gute Lernquelle.
|
|
19.09.2007 17:31 |
|
|
Tobias
Routinier
Dabei seit: 18.09.2006
Beiträge: 324
|
|
Wie ist denn die Datei aufgebaut? Also wie sind die Einträge darin gespeichert?
Hast du schon dein ListModel implementiert?
|
|
25.09.2007 17:29 |
|
|
Anikin
Grünschnabel
Dabei seit: 19.09.2007
Beiträge: 5
|
|
Nein, das habe ich noch nicht gemacht.
Könntest du mir vielleicht auf die Sprünge helfen???
|
|
25.09.2007 17:51 |
|
|
JoTheGunny
Jungspund
Dabei seit: 12.11.2008
Beiträge: 10
Herkunft: NRW
|
|
|
03.05.2009 21:14 |
|
|
|