tutorials.de Buch-Aktion 05/2012
ERLEDIGT
JA
ANTWORTEN
5
ZUGRIFFE
452
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    angeleyes21 angeleyes21 ist offline Grünschnabel
    Registriert seit
    Dec 2010
    Beiträge
    4
    Hi zusammen.

    Ich muss für dieses Semester eine CD-Verwaltung erstellen. Soweit Funktioniert auch alles schon.
    Das einzige Problem was aussteht, ist das Löschen mehrere ausgewählter Zeilen. Zur Zeit versuch ich das Problem mit checkboxen zu bekämpfen allerdings klappt das nciht so ganz wie es soll.
    Habe derzeit eine geistige Blockade und brauche dringend Hilfe. Anbei ist mein bisher erstelltes Programm.
    Wenn mir jemand helfen könnte wäre ich ihm oder ihr sehr Dankbar

    LG Marc
    Angehängte Dateien Angehängte Dateien
     

  2. #2
    RoCMe RoCMe ist offline Mitglied Gold
    Registriert seit
    Dec 2007
    Beiträge
    193
    Werd doch mal etwas genauer:

    Woran hakt es? Am Auswaehlen mehrerer Zeilen der Liste? Was denn ueberhaupt für eine Liste?
    Und wozu die Checkboxen?

    Ich - und vermutlich auch viele andere - habe werde Lust noch Zeit, mir deinen Code aufs Gerate Wohl anzusehen.
    Erklär mal, wo genau das Problem liegt und versuch vielleicht auch gleich, die passenden Code-Fragmente mit Hilfe von [ java ] Tags direkt ins Forum zu posten - das hilft uns, dir zu helfen!
     

  3. #3
    angeleyes21 angeleyes21 ist offline Grünschnabel
    Registriert seit
    Dec 2010
    Beiträge
    4
    nun das Problem gestaltet sich folgendermaßen:

    ich habe eine tabelle in der verschieden Daten abgespeichert werden, wie zum beispiel CD-Titel, anzahl der tracks und so weiter.
    Nun soll es möglich sein mehrere CD's aus dieser Tabelle zu löschen. Derzeit geht das leider nur einzeln.

    Nun habe ich schon das problem dass ich nicht mehrere Zeilen der Tabelle markieren kann und mein programm sich diese auch merkt. Mein professer meinte, dass wir dies ja mit eienr extra spalte in der tabelle regeln können. Dazu sollen wir checkboxen anlegen.

    Seine Idee war es dass einfach jede markierte bzw checkbox aktivierte zeile gelöscht wird.
     

  4. #4
    Matt297 Matt297 ist gerade online Mitglied Gold
    Registriert seit
    Oct 2008
    Beiträge
    179
    Nun habe ich schon das problem dass ich nicht mehrere Zeilen der Tabelle markieren kann und mein programm sich diese auch merkt. Mein professer meinte, dass wir dies ja mit eienr extra spalte in der tabelle regeln können. Dazu sollen wir checkboxen anlegen.
    Ich habe eben nur ganz kurz dein Programm überflogen und gesehen dass du Swing benutzt(JTable), und damit kannst du genau das tun, was du bestreitest.

    Erstens: Gibts es die Möglichkeit setSelectionMode(int), damit kannst du drei Mögliche Modi wählen in Form von Konstanten der Klasse ListSelectionModel. Der der dich interessiert ist MULTIPLE_INTERVAL_SELECTION.

    Der zweite Schritt ist, dass du dir mit getSelectedRows() ein Array mit den Indizes aller selektieren Zeilen holen kannst. Durch dieses Array kannst du dann mit einer Schleife gehen und alle Zeilen löschen, am besten von hinten beginnend, denn sonst verschieben sich die Zeilen

    Gruß
    Matt
     

  5. #5
    Avatar von zerix
    zerix zerix ist offline Hausmeister
    tutorials.de Moderator
    Registriert seit
    May 2005
    Beiträge
    4.335
    Hallo,

    wenn du das mit Checkboxen lösen möchtest, könntest du dir für die CD einen Decorator schreiben. Das heißt eine Klasse, die im Konstruktor eine CD übergeben bekommt. Dieser Decorator stellt die gleichen Methoden zur Verfügung wie die CD und delegiert alle Aufrufe an die CD, dass man über diesen Decorator die Daten der CD abfragen kann. Allerdings kommt noch das Attribut selected dazu mit eigenen Getter und Setter.

    Dein TableModel hält dann nicht mehr die Daten, sondern eine Liste der Decorator. So kannst du einfach eine Spalte hinzufügen, die das Attribute selected anzeigt. Dann musst du nur noch im Model für die ColumnClass für diese Spalte Boolean.class zurückgeben. Dann werden automatisch in dieser Spalte Checkboxen dargestellt.

    Dann brauchst du nur noch deine Decorator abfragen welche selektiert sind und diese kannst du dann löschen.

    Gruß

    Sascha
     
    Es ist schwer Allwissend zu sein. Aber ich komme damit klar. ;-)

  6. #6
    angeleyes21 angeleyes21 ist offline Grünschnabel
    Registriert seit
    Dec 2010
    Beiträge
    4
    Danke an für die Hilfestellung, nun funktioniert alles so wie es soll
     

Ähnliche Themen

  1. Mehrere markierte Zeilen von JTable löschen
    Von angeleyes21 im Forum Java
    Antworten: 1
    Letzter Beitrag: 18.01.11, 18:14
  2. [sed] Mehrere Zeilen löschen
    Von soa im Forum Linux & Unix
    Antworten: 4
    Letzter Beitrag: 07.05.10, 20:20
  3. Alle Zeilen aus einer Tabelle löschen - unbekannte Zeilenzahl
    Von Biergamasda im Forum Javascript & Ajax
    Antworten: 2
    Letzter Beitrag: 21.03.06, 18:31
  4. Antworten: 22
    Letzter Beitrag: 09.12.05, 10:02
  5. mehrere zeilen von tabelle 1 in tabelle 2 verschieben
    Von muhkuh im Forum Relationale Datenbanksysteme
    Antworten: 7
    Letzter Beitrag: 12.08.03, 01:15

Stichworte