Portal > Foren > Java > Desktop-Applikationen und Grafik > newbie jtable realisierung
Antwort
 
Themen-Optionen Thema durchsuchen
Alt 26.12.2004, 21:02 Nach oben    #1
herates
Gast
 
Beiträge: n/a
Standard newbie jtable realisierung

hallo, ich habe eine dynamische anzahl von objekten deren 4 eigenschaften ich spaltenmäßig in einem jtable anzeigen will.
problem ist; ich versteh das prinzip des jtables und des tablemodels überhaupt nicht.
habe schon stunden vor der javadoku gesessen aber bei fehlerhaften englischkenntnissen und nur 2 vorlesungen java gui fehlt mir auch die erfahrung.
ich habe es mit ach und krach geschafft das jtable im scrollpane anzeigen zu lassen.
zuätzlich darf man das table nicht verändern und es soll ein eventlistener bezüglich eines doppelklicks auf eine zeile realisiert werden.
hab auch schon was mit vektoren aufgschnappt aber wie oben schon gesagt....????

wolfgang
 
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 26.12.2004, 21:27 Nach oben    #2
bluelight
Gast
 
Beiträge: n/a
Standard

so du bis jetzt dafür verantwortlich, dass ich mich vor mein Buch gesetzt habe und schon eine halbe Ewigkeit über die Lösung grüble
Hier ein Vorläufiges Ergebnis:
Du erzeugst ein 2 Demensional Arry,dessen erste Dimension die Anzahl deiner Objekte entspricht und weißt, der zweiten Dimension die entsprechen die Objekte zu. Um dies Verständlicher zu erklären muss ich wissen, ob das Objekt ein Array ist oder was die Daten für die vier Spalten beinhaltet, dann legst du eion Array mit den Namen der Spalten an. Du Erzeugst die Tabelle mit volgendem Konstruktor:
Java Code:
  1. JTable jt = new JTable(Mehrdemensionalerarray[][], eindemensionaler[]);
danach addest du sie:
Java Code:
  1. c.add(jt);
sobald sich die Anzahl der Objekte änddert, weißt du die Array neue werte zu und machst folgendes:
Java Code:
  1. c.remove(jt);
  2. jt = new JTable(Mehrdemensionalerarray[][], eindemensionaler[]);
  3. c.add(jt);
ich weiß dies ist nicht die eleganteste Methode, wenn ich mehr herraus gefunden habe liefere ich es nach. Ich hoffe dies hat dir geholfen
bluelight
 
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 26.12.2004, 21:37 Nach oben    #3
herates
Gast
 
Beiträge: n/a
Standard

c ist mein scrollpane. habe ich das richtig verstanden?
ich soll eine lagerverwaltung implementieren und habe halt obekte lager
mit den eigenschaftn standort lagerart lagergut und kapazität.
und die lager muss ich in dem table auflisten.
viellicht hilft das.

wolfgang
 
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 26.12.2004, 21:46 Nach oben    #4
bluelight
Gast
 
Beiträge: n/a
Standard

verstehe ich das richtig, dass in deinem "Objekt" die Eigenschaften gespeichert sind, wenn ja muss ich wissen wie sie dort gespeichert sind, in einem Array, Collection oder etwas anderem.
 
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 26.12.2004, 21:57 Nach oben    #5
herates
Gast
 
Beiträge: n/a
Standard

sorry muss mich glaub ich verbessern. problem ist die implemetierung des eigentlich programmes ist vorgegeben. ich muss die gui drumrum bauen
also ich habe eine abstrakte klasse LAGER
mit den eigenschaften
private String standort;
private int kapazitaet;
private Lagergut[] lagergueter;

diese klasse erbt an: StUECKGUTLAGER und MASSENGUTLAGER beide abstrakt
und die wiederrum an:
Schwerlastlager, Hochregallager und Oellager und Getreidelager

ich werde dann immer ein Obekt der letztgenannten Lager erzeugen in ein Array packen.
Die oben 3 gennanten Eigenschaften plus welche Lagerart es ist sollen dann in das table gepackt werden.
hoffe das ist verständlich so?!?

aber auf jeden fall schonmal danke für die hilfe
 
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 26.12.2004, 21:58 Nach oben    #6
herates
Gast
 
Beiträge: n/a
Standard

zur veranschaulichung. so soll das asussehen
 
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 26.12.2004, 22:48 Nach oben    #7
bluelight
Gast
 
Beiträge: n/a
Standard

Wenn ich es richtig verstanden habe dann ist es ganz einfach, du erzeugst einen zweidemensionalen Array, bei dem ersten Objekt,gehst du in der ersten demension auf null und kopierst dein Objekt in die zweite Demension, beim zweiten Objekt gehst du in der ersten Demension auf eins uund machst das gleiche wie beim ersten und das ganze bis du keine Objekte mehr hast, danach machst du es wie ich es dir beschrieben hatte.
 
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 26.12.2004, 23:04 Nach oben    #8
herates
Gast
 
Beiträge: n/a
Standard

das versteh ich nicht ganz...
dann wäre ja meine erste dimension ja immer leer...welchen sinn hätte sie dann.
dann würde ich das array beim aufruf des konstruktors von jt in das table eingeben.
wie würde das denn aussehen???
und wie bekomme ich in die einzelnen eigenschaften in die entsprechenden spalten?
 
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 27.12.2004, 13:29 Nach oben    #9
bluelight
Gast
 
Beiträge: n/a
Standard

Die Eignschaften bekommst du mit dem ein Demensionalen Array, wie ich es oben beschrieben hatte, wie meinst du das die erste Demension immer Leer ist, ein mehr Demensionaler Array funktioniert wie ein koordinaten Feld, unter einem Wert einer ersten und zweiten Demension ist immer ein Objekt abgespeichert.
Java Code:
  1. Object ma[][] = new Object[a][4];
  2. for(int i = 0; i < a; i++) {
  3.   ma[i][0] = Standort;
  4.   ma[i][1] = lagerart;
  5.   ma[i][2] = kapazität;
  6.   ma[i][3] = lagergueter;
  7. }
  8. Object ea[] = new Object[4];
  9. ea[0] = (Object)"Standort";
  10. ea[1] = (Object)"lagerart";
  11. ea[2] = (Object)"kapazität";
  12. ea[3] = (object)"lagergueter";
  13. JTable t = new JTable(ma[][],ea[]);
 
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 28.12.2004, 16:47 Nach oben    #10
Sym
Chefkoch-Mod
 
Benutzerbild von Sym
 
Registriert seit: 30.05.2004
Beiträge: 432
Standard

Die Klammern im Konstruktor stören da aber ein wenig.
__________________
Denk mal darüber nach...

Lars

ACHTUNG: wenn ich von Klassen spreche, könnte ich auch deren Instanzen meinen.
www.linuxforen.de +++ www.macuser.de +++ www.mrunix.de +++ www.lmprojects.de
Sym ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
PingBacks sind an
RefBacks sind aus

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
JTable reagiert nicht auf Menueklick tommyboy Desktop-Applikationen und Grafik 8 20.08.2006 23:38
Probleme mit JTable: Spaltenbreite ändert sich einfach wieder! Lautsprecher Datenbanken 2 20.10.2005 15:26
GESUCHT:simples beispiel zum thema resultset, tablemodel => in einer JTable ausgeben! bamboocha Desktop-Applikationen und Grafik 2 06.06.2005 21:34
JTable aktualisieren Vril Desktop-Applikationen und Grafik 3 21.05.2005 16:37
Spaltennamen in einer JTable argos Desktop-Applikationen und Grafik 6 15.05.2005 18:16


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:31 Uhr.


Powered by vBulletin® Version 3.7.4 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45