Hallo,
ich möchte gerne eine JTable mitnem DefautTableModel mit Daten aus ner XML Datei füttern.
Dazu benutz ich eine ArrayList(Vector<Object>) , weil ich für Attribute aus der XML Datei, welche als boolean dargestellt sind eine JComboBox einsetzen muß. Soweit ich das nun richtig gelesen habe, muß ich mir nen eigene TableRenderer bauen.
Kann mir jemand sagen wie ich das genau tun muß? Oder hat jemand nen gutes Beispiel parat?
Hier die Funktion womit ich mir die Daten aus der XML ziehen und in die Struktur ArrayList(Vector<Object>) drücke.
greetz
Kekskennzeichen
ich möchte gerne eine JTable mitnem DefautTableModel mit Daten aus ner XML Datei füttern.
Dazu benutz ich eine ArrayList(Vector<Object>) , weil ich für Attribute aus der XML Datei, welche als boolean dargestellt sind eine JComboBox einsetzen muß. Soweit ich das nun richtig gelesen habe, muß ich mir nen eigene TableRenderer bauen.
Kann mir jemand sagen wie ich das genau tun muß? Oder hat jemand nen gutes Beispiel parat?
Hier die Funktion womit ich mir die Daten aus der XML ziehen und in die Struktur ArrayList(Vector<Object>) drücke.
Code:
@SuppressWarnings ("unchecked")
private ArrayList <Vector <Object>> getDataRows ( )
{
ArrayList <Vector <Object>> dataRows = new ArrayList <Vector <Object>> ( );
for (Iterator <Element> iterator = locations.getChildren ( ).iterator ( ); iterator.hasNext ( );)
{
Element loc = (Element) iterator.next ( );
Vector <Object> data = new Vector <Object> ( );
for (Iterator <Attribute> iterator1 = loc.getAttributes ( ).iterator ( ); iterator1.hasNext ( );)
{
Attribute attribute = (Attribute) iterator1.next ( );
if (attribute.getValue ( ).toString ( ).trim ( ).equals ("true")
|| attribute.getValue ( ).toString ( ).trim ( ).equals ("false"))
{
JComboBox comboBox = new JComboBox();
comboBox.addItem ("true");
comboBox.addItem ("false");
data.add (comboBox);
}
else
{
data.add (attribute.getValue ( ));
}
}
for (Iterator <Element> iterator2 = loc.getDescendants (new ElementFilter ( )); iterator2.hasNext ( );)
{
Element element = (Element) iterator2.next ( );
data.add (element.getValue ( ));
}
dataRows.add (data);
}
return dataRows;
}
greetz
Kekskennzeichen