JList

Neue Frage »

Auf diesen Beitrag antworten »
Anikin JList

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.
 
Auf diesen Beitrag antworten »
Tobias

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.
Auf diesen Beitrag antworten »
Anikin

Also sitze immernoch an dieser Aufgabe und verzweifle fast.

Habe jetzt die Oberfläche insoweit fertig, dass ich die Karteikarten und die Menüleiste habe. Auch die Uhr, die oben in der Kopfzeile funktioniert auch gut.

Allerdings komme ich zum Beispiel gar nicht damit klar, die Textdatei Birthdaylist in mein Programm einzulesen bzw. dass er mir diese namen, die darin stehen plus Geburtsdatum auf meine karteikarten bzw. in die Liste schreibt......


Bitte hilf mir jemand................ traurig
Auf diesen Beitrag antworten »
Tobias

Wie ist denn die Datei aufgebaut? Also wie sind die Einträge darin gespeichert?

Hast du schon dein ListModel implementiert?
 
Auf diesen Beitrag antworten »
Anikin

Nein, das habe ich noch nicht gemacht.

Könntest du mir vielleicht auf die Sprünge helfen???
Auf diesen Beitrag antworten »
JoTheGunny

so schwer ist es doch nicht, brauchst du noch hilfe, oder ist es schon zu spät?
Ein kleiner Tipp noch: http://openbook.galileocomputing.de/javainsel8/ ist ein gutes Buch zum lernen von Java.
 
Neue Frage »
Antworten »


Verwandte Themen