ZeroJump
03.07.2002, 17:30
Hallo, ich schreibe gerade einen E-Mailclienten. Dazu habe ich einige Fragen:
Erstens: Eingangs- und Ausgangskorb sollen getrennt angezeigt werden können. Dazu habe ich zunächst meinen Hauptframe in 2 Teile geteilt. Links kann man auswählen, was man ansehen möchte, ähnlich wie bei Outlook. Rechts wird dann der Ein- oder Ausgangskorb angezeigt. Zumindest soll es so sein. Mein Problem ist nämlich, dass ich nicht weiss, wie ich zur Laufzeit des Programms einzelne Teile des GUI austauschen kann. Alles, was zu den Mail-Körben gehört befindet sich auf einem JPanel. Eigentlich muss man doch irgendwie das eine JPanel auf Knopfdruck durch ein anderes ersetzen können, oder?
Zweitens: Alle E-Mails werden in einem Vector gehalten und in einer JTable angezeigt. Es soll dem User möglich sein, einzelne Mails zu markieren in der Tabelle und zu löschen. Das heißt sie müssten aus dem Vector entfernt werden. Mit Hilfe einer Methode aus JTable kann ich mir in einem Integer-Array die Zeilen-Nummern geben lassen, von den markierten Zeilen. Genau diese müssen jetzt aus dem Vector gelöscht werden. Allerdings kennt die Vectorklasse keine Methode, um bestimmte Elemente zu entfernen. Ich hab schon ein paar Versuche mit einer for-Schleife gemacht, das Problem ist aber, dass der Vector nach jedem Löschen eines Elements seine Inhalte neu organisiert. Das bedeutet: Lösche ich Element Nummer 4 mit einem Schleifendurchlauf, dann wird Element Nummer 5 im nächsten Durchlauf Nummer 4. Wenn ich bei diesem Durchlauf das ursprüngliche Element Nummer 5 Löschen wollen würde, würde ich Element Nummer 6 löschen.
Kurz: Wie entferne ich auf einmal verschiedene Elemente aus einem Vector?
PS: Kann man mir folgen?
Erstens: Eingangs- und Ausgangskorb sollen getrennt angezeigt werden können. Dazu habe ich zunächst meinen Hauptframe in 2 Teile geteilt. Links kann man auswählen, was man ansehen möchte, ähnlich wie bei Outlook. Rechts wird dann der Ein- oder Ausgangskorb angezeigt. Zumindest soll es so sein. Mein Problem ist nämlich, dass ich nicht weiss, wie ich zur Laufzeit des Programms einzelne Teile des GUI austauschen kann. Alles, was zu den Mail-Körben gehört befindet sich auf einem JPanel. Eigentlich muss man doch irgendwie das eine JPanel auf Knopfdruck durch ein anderes ersetzen können, oder?
Zweitens: Alle E-Mails werden in einem Vector gehalten und in einer JTable angezeigt. Es soll dem User möglich sein, einzelne Mails zu markieren in der Tabelle und zu löschen. Das heißt sie müssten aus dem Vector entfernt werden. Mit Hilfe einer Methode aus JTable kann ich mir in einem Integer-Array die Zeilen-Nummern geben lassen, von den markierten Zeilen. Genau diese müssen jetzt aus dem Vector gelöscht werden. Allerdings kennt die Vectorklasse keine Methode, um bestimmte Elemente zu entfernen. Ich hab schon ein paar Versuche mit einer for-Schleife gemacht, das Problem ist aber, dass der Vector nach jedem Löschen eines Elements seine Inhalte neu organisiert. Das bedeutet: Lösche ich Element Nummer 4 mit einem Schleifendurchlauf, dann wird Element Nummer 5 im nächsten Durchlauf Nummer 4. Wenn ich bei diesem Durchlauf das ursprüngliche Element Nummer 5 Löschen wollen würde, würde ich Element Nummer 6 löschen.
Kurz: Wie entferne ich auf einmal verschiedene Elemente aus einem Vector?
PS: Kann man mir folgen?