JTable ändern, aber NICHT per Code erzeugen

TesTT

Mitglied
Hi,

bin ein relativer Java-Neuling und ich schlage mich gerade mit JTable rum. Mein Problem:
Ich habe mit Netbeans eine JFrame Form erstellt und darauf ein JTable gepackt. Ich bekomme es aber nicht hin, irgendwelche Daten (per Code) in die Tabelle zu schreiben oder auch nur irgendwas mit ihr zu machen.
Mein Problem ist, dass ich nur solche Tutorials finde, die aber bei meiner "bereits bestehenden" Tabelle nicht anschlagen:
Java:
String[][] data = new String[][]{{"a", "b", "c", "d"},{"e", "f", "g", "h"}};
String[] title = new String[]{"A", "B", "C", "D"};

JTable table = new JTable( data, title );
        
JFrame frame = new JFrame( "Demo" );
frame.getContentPane().add( new JScrollPane( table ) );

Meine Tabelle ist ja nicht "new" sondern ist bereits auf meine Formular vorhanden. Wie kann ich meine Tabelle ansprechen?

Grüße

Tes
 
S

SlaterB

Gast
tja, es gibt keine Methode getDieTableDieIchGeradeBrauche(),
das hängt schon vom reslichen Code ab, findest du nicht?
irgendwo dort wird doch eine JTable deklariert, die muss in ein Klassenattribut, dann kannst du später noch darauf zugreifen,
oder gleich dort wo sie definiert wird weiter bearbeiten

ist die JTable nicht gemerkt wirds noch unsauberer,
dann könntest du nur noch alle vorhandenen Komponenten durchlaufen und jeweils prüfen,
aber das willst du bestimmt nicht, hoffe ich
 

TesTT

Mitglied
Nein, was ich möchte ich ganz simpel:
z.B. eine Tabelle mit 3 Spalten und 5 Reihen erzeugen und jeweils den Eintrag in der i-ten Spalte und j-Zeilen festlegen. Nur würde ich gerne die Tabelle nutzen, die ich bereits auf das Formular gepackt habe. Denn ich will eigentlich zwei Tabellen neben einander haben, doch wenn ich die per Code neu erzeuge, dann gibt es pro Tabelle immer ein neues Fenster... :(
 
S

SlaterB

Gast
soweit stand das schon in deinem ersten Posting, ich könnte noch nichts neues schreiben
 

TesTT

Mitglied
Ich habe bisher immer mit VB6 programmiert und ich verstehe den Aufbau hinter Java glaub ich noch nicht ganz. Wieso wird bei Java meist alles zur Laufzeit per Code erzeugt? In VB habe ich mir meine Form gebastelt und dann alles geändert, wie ich es gerade brauchte. Ich frag einfach mal ganz naiv:
Wozu kann man denn dann Forms in Netbeans erstellen, wenn z.B. die Tabelle unveränderbar scheint?
 
S

SlaterB

Gast
ich selbst benutze derartige Designer nicht, gewiss wird das ganze aber nicht unveränderbar sein,
man muss sich bestimmt nur genau genug auskennen, irgendwo die Option 'hier ändern' finden,
 
S

SlaterB

Gast
siehe etwa
java.net Forums : Jtable from netbeans gui ...
Somewhere at the top of the code view, I declared my data array.

Then, I clicked on the JTable properties, then clicked model.

I picked FormConnection from the dropdown box and then under user code I set the model and passed it the array and column headings and data types.

Then, I clicked Advanced and under PRE-initialization code, I entered the code to read the data file and load it into an array.

It works great!
 

Hogli

Mitglied
Hallo,
in JTables sind in der Regel Ansicht und Daten voneinander getrennt.

Eine Instanz von JTable ist die Ansicht und die Daten können beliebig aufgebaut sein. Sie müssen nur die Schnittstelle javax.swing.table.TableModel implementieren. Als Basisklasse für eine eigene Implementierung würde ich
javax.swing.table.AbstractTableModel vorschlagen. Das TableModel kann man über den Konstruktor oder später mit jtable.setModel(new XyModel(Data data)) übergeben und damit an die Tabelle binden.

Siehe auch:
Galileo Computing :: Java ist auch eine Insel (8. Auflage) – 16.18 Tabellen (JTable)

Grüße Hogli
 

tuttle64

Bekanntes Mitglied
Naja, dann muss ich wohl irgendeinen anderen Weg finden. Trotzdem danke für die Antworten...


Hier ist ein Beispiel, welches mit Deinen Daten lauffähig ist. Der vertikale JScrollPane wird nur dann aktiviert, wenn die Anzahl der Rows die grösse des Fensters übersteigt.


Code:
import java.awt.BorderLayout;

import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTable;


public class JTableExample extends JFrame {
	
	public JTableExample(String n) {
	super(n);
	String[][] data = new String[][]{{"a", "b", "c", "d"},{"e", "f", "g", "h"}};
	String[] title = new String[]{"A", "B", "C", "D"};
	 
	JTable table = new JTable( data, title );
	        
	JScrollPane sPane = new JScrollPane();
	setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE ); 
	add( new JScrollPane( table ) );
	}
	
	public static void main(String[] args) {	
	JTableExample frame = new JTableExample("Demo");
	frame.setSize(300, 300);
	frame.setVisible(true);
	}
}
 

TesTT

Mitglied
Danke für die Mühe, aber leider habe ich wieder dasselbe Problem!
Java:
JTable table = new JTable( data, title );
...
JTableExample frame = new JTableExample("Demo");

Ich möchte keine Tabelle und keine Form erzeugen. Diese habe ich ja bereits mit dem GUI-Editor erstellt! Wenn ich auf einen Button klicke, dann sollen beispielsweise alle Einträge meiner Tabelle 'jTable1' (die sich auf meiner Form befindet) gelöscht werden und dafür neue Einträge hinzugefügt werden. Ist sowas möglich? ???:L
 

tuttle64

Bekanntes Mitglied
Ich möchte keine Tabelle und keine Form erzeugen. Diese habe ich ja bereits mit dem GUI-Editor erstellt! Wenn ich auf einen Button klicke, dann sollen beispielsweise alle Einträge meiner Tabelle 'jTable1' (die sich auf meiner Form befindet) gelöscht werden und dafür neue Einträge hinzugefügt werden. Ist sowas möglich? ???:L


Ohne Code zu erzeugen müsste die JTable dynamisch geladen werden können z.B. über ein bestehendes Textfile. Um die Einträge zu ändern, müsstest Du das Textfile editieren, aber keinen Code anrühren. Sowas?
 

darkeye2

Bekanntes Mitglied
auch netbeans kann dir doch wohl den code anzeigen, und wenn du da was einfügst, wird im code automatisch alles erzeugt, dann schaust einfach im code, wo eine jtable inintialisiert wird, und schaust auf den namen:
im code steht irgendwo sowas:
JTable derName = new JTable
diesen namen schaust dir an, und dann kannst ja einfach deinen code anhängen, und alles damit machen:
derName.beliebigeSetOderGetFunktionOderAllesAndere();
also sollte doch net so schwierig sein, bei vb6 siehst soweit ich weiß den code für die gui componenten gar nicht so richtig, hier schon, weiß net genau, wie netbeans aufgebaut ist, benutzte nur nen einfachen editor, der nur syntaxhighlighting kann^^

MfG
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
S Farbe eine Zeile in JTable ändern, wenn JButton geklickt wurd Java Basics - Anfänger-Themen 4
N JTable - Zellfarben ändern, GUI-Komponenten in Zellen einfügen Java Basics - Anfänger-Themen 5
H CSV Dateien einlesen, ändern, speichern in Jtable Java Basics - Anfänger-Themen 5
S JCheckbox-Werte in JTable ändern Java Basics - Anfänger-Themen 2
C Daten einer JTable lassen sich nicht ändern Java Basics - Anfänger-Themen 6
G jTable schriftgröße und -farbe ändern? Java Basics - Anfänger-Themen 2
T Text einer JTable-Zeile farblich ändern Java Basics - Anfänger-Themen 16
D JTable Columngrösser ändern ? Java Basics - Anfänger-Themen 2
richis-fragen JTable bei aktivieren einer Zelle soll Text selektiert werden. Java Basics - Anfänger-Themen 14
richis-fragen JTable setModel(myModel) ok -> wie wieder unset machen? Java Basics - Anfänger-Themen 8
richis-fragen JTable den angezeigten WERT nicht den Wert aus dem Model ausgeben. Java Basics - Anfänger-Themen 3
richis-fragen JTable Header ausgeblendete (width = 0) nicht per mouseDragged aufziehen. Java Basics - Anfänger-Themen 9
richis-fragen JTable sowohl Spaltennamen wie auch Spaltenbeschriftungen Java Basics - Anfänger-Themen 7
richis-fragen JTable effektiv angezeigter Text ausgeben nicht Inhalt vom Model Java Basics - Anfänger-Themen 9
G JTable Listselectionlistener friert das Programm ein Java Basics - Anfänger-Themen 8
Mady Daten von JList & Combobox in JTable adden Java Basics - Anfänger-Themen 2
W Liste mit Listen in JTable darstellen Java Basics - Anfänger-Themen 1
J Zelleninhalt einer Jtable löschen Java Basics - Anfänger-Themen 2
E JTable einzelne Zelle färben Java Basics - Anfänger-Themen 2
thobren jtable arraylist Java Basics - Anfänger-Themen 12
thobren JTable Icon Java Basics - Anfänger-Themen 1
R Compiler-Fehler JTable mit XML befüllen | The constructor JTable(Object[], String[]) is undefined Java Basics - Anfänger-Themen 10
H Kapselung JProgressBar in JTable, aber getValueAt() greift nicht Java Basics - Anfänger-Themen 7
G JTable, Zeile auswählen und Ergebnis an Schaltfläche übergeben Java Basics - Anfänger-Themen 4
J Jtable Eingabe nach Klick ausserhalb der Tabelle übernehmen Java Basics - Anfänger-Themen 6
J JTable Spalteninhalt löschen Java Basics - Anfänger-Themen 1
J JTable Titel wird nicht angezeigt Java Basics - Anfänger-Themen 6
B jTable Spalte summieren Java Basics - Anfänger-Themen 7
N JTable auslesen Java Basics - Anfänger-Themen 6
O JTable in Excel mit Farben Java Basics - Anfänger-Themen 8
O Kommentar auf JTable Zelle Java Basics - Anfänger-Themen 2
M Jtable Reenderer Java Basics - Anfänger-Themen 0
O Popoup Menü im JTable richtig anzeigen Java Basics - Anfänger-Themen 6
M Jtable änderung updaten Java Basics - Anfänger-Themen 2
O JTable Suchfunktion Java Basics - Anfänger-Themen 2
M jTable bekommt null Java Basics - Anfänger-Themen 1
M JTable an andere Klasse übergeben Java Basics - Anfänger-Themen 2
M Datenbank in jTable Laden Java Basics - Anfänger-Themen 49
M Klasse in JTable einfügen Java Basics - Anfänger-Themen 7
S JTable Java Basics - Anfänger-Themen 16
S JTable mit Daten füllen Java Basics - Anfänger-Themen 7
L JTable Tagebuch Spaltenhöhe verändern Java Basics - Anfänger-Themen 3
S JTable - Filter an anderen Colums Java Basics - Anfänger-Themen 2
R JTable Suchfunktion mit SQL Daten Java Basics - Anfänger-Themen 2
C JTable update mit MySQL Datenbank Java Basics - Anfänger-Themen 1
C Best Practice JTable in MVC Pattern Java Basics - Anfänger-Themen 7
J Daten einer Textdatei in ein JTable importieren. Java Basics - Anfänger-Themen 3
A zykl. Aktualisierne JTable Java Basics - Anfänger-Themen 9
C Endlosschleife bei füllen von Daten im JTable Java Basics - Anfänger-Themen 5
C Werte aus JTable auslesen Java Basics - Anfänger-Themen 4
A Probleme beim zykl. aktulisieren von Daten in JTable Java Basics - Anfänger-Themen 3
V JTable welcher Listener ? Java Basics - Anfänger-Themen 7
D Falsche Zeile wird in JTable gelöscht Java Basics - Anfänger-Themen 6
D MySQL Abfrage in JTable speichern Java Basics - Anfänger-Themen 43
D JTable Zeile wird nicht in MySQL gelöscht Java Basics - Anfänger-Themen 16
D JTable Zeilen löschen Java Basics - Anfänger-Themen 5
C Klassen JTable wird ohne Header aufgebaut Java Basics - Anfänger-Themen 6
K (JTable) Text einer Zelle auf der linken Seite kürzel Java Basics - Anfänger-Themen 2
B Kniffel JTable Java Basics - Anfänger-Themen 5
N JTable flackert Java Basics - Anfänger-Themen 8
T JTable Daten aus txt datei Java Basics - Anfänger-Themen 3
J ArrayList wird in JTable falsch angezeigt Java Basics - Anfänger-Themen 0
J Eintragen von Personen in JTable Java Basics - Anfänger-Themen 4
X JTable mit grünen und roten Punkten Java Basics - Anfänger-Themen 2
LexeB4F DEL --> JTable Zelleninhalt Java Basics - Anfänger-Themen 3
R JTable Auslesen Java Basics - Anfänger-Themen 1
Crazynet jTable erste Zeile mit deffinierten Werten Java Basics - Anfänger-Themen 0
K Collections Sortieren nach zweiter Spalte in JTable Java Basics - Anfänger-Themen 18
J JTable Wert gleich überschreiben Java Basics - Anfänger-Themen 6
S Zeile entfernen aus JTable Java Basics - Anfänger-Themen 15
S JTable clonen Java Basics - Anfänger-Themen 5
H Best Practice PDF JTable Java Basics - Anfänger-Themen 4
S In JTable Zeile selektieren mit Mausklick Java Basics - Anfänger-Themen 16
D JTable Probleme beim Sortieren von Zahlen. Java Basics - Anfänger-Themen 6
M JTable mit XML datei befüllen Java Basics - Anfänger-Themen 1
F Zeile bei JTable hinzufügen Java Basics - Anfänger-Themen 6
K JTable Bild einfügen Java Basics - Anfänger-Themen 1
M [JTable] getValue throws ArrayOutOfBoundException Java Basics - Anfänger-Themen 1
B JTable - Highlighter ??? Java Basics - Anfänger-Themen 3
S JTable LinkedList <Objekt> befüllen Java Basics - Anfänger-Themen 1
S JTable dynamisch mit Datenbankinhalten füllen Java Basics - Anfänger-Themen 6
W JTable mit einem JButton-Array füllen Java Basics - Anfänger-Themen 4
O JScrollPane zu gross für JTable Java Basics - Anfänger-Themen 2
L JTable Row selected -> fireTableDataChange do nothing. Java Basics - Anfänger-Themen 3
E JTable + TableModel updaten? Java Basics - Anfänger-Themen 1
O java.lang.IndexOutOfBoundsException JTable autoSort Java Basics - Anfänger-Themen 5
F JTable adding Row Java Basics - Anfänger-Themen 5
P jTable getColumnClass, mit unterschiedlichen Klassen in einer Column? Java Basics - Anfänger-Themen 5
M Eingabe in JTable bei Eingabe korrigieren Java Basics - Anfänger-Themen 2
Z jtable problem (das tausendste??) Java Basics - Anfänger-Themen 12
J JTable Java Basics - Anfänger-Themen 7
T JTable Java Basics - Anfänger-Themen 2
T JTable einzelne Zeilen löschen Java Basics - Anfänger-Themen 3
Uzi21 jTable / Inhalt speichern Java Basics - Anfänger-Themen 2
M Problem mit JTable und Model Java Basics - Anfänger-Themen 3
F Methoden JTable + 2 For-Schleifen Java Basics - Anfänger-Themen 4
C jtextfield und jtable Java Basics - Anfänger-Themen 34
X JTable mit Inhalten aus JTextField o.ä. füllen Java Basics - Anfänger-Themen 4
G JTable: SelectionListener Problem Java Basics - Anfänger-Themen 2
G JTable: Werte in Tabelle direkt ansprechen Java Basics - Anfänger-Themen 3

Ähnliche Java Themen

Neue Themen


Oben