JavaFX Daten aus Tabelle in ComboBox

Faru12

Mitglied
Hallo zusammen,

Ich bin auf der Suche nach der Lösung eines Problems:

Und zwar habe ich in SceneBuilder eine Tabelle erstellt, in die ich Daten eintragen kann. Das funktioniert bestens. Nun sollen die Daten aus einer Spalte automatisch in die Werteliste einer ComboBox kommen und von dort dann wieder in eine andere Tabelle. Nun stehe ich an, bei der Frage wie ich die Daten aus einer tableColumn in die ComboBox bekomme :bahnhof:. Kann mir da jemand helfen?

Vielen Dank!
 

dzim

Top Contributor
Du hast ja eine ObservableList oder so, die die Daten enthält (auf der Tabelle: #getItems() oder so). Diese übergibst du der ComboBox. Musst dann nur die ValueFactory oder so ausbauen. Beispiele sollte es hier im Forum haben...
 

Grimnir

Mitglied
Hi,

um Daten aus der Tabelle zu hohlen:

Java:
public static void zeilenlesen() {

		int a = table.getSelectedRow();
		int b = table.getColumnCount();

		String[] zeilenwert = new String[b];
		
		for (int i = 0; i < b; i++) {

			zeilenwert[i] = ((String) table.getValueAt(a, i));
//			System.out.println(zeilenwert[i]);
		}

um das dann in ne ComboBox zu werfen:

Java:
for (int i = 0; i <= zeilenwert.length; i++) {
			comboBox.addItem(zeilenwert[i]));
			 }

So ungefähr sollte es klappen.

um aus ComboBox zu rufen: comboBox.getSelectedItem()

Gruß Grimnir
 

Faru12

Mitglied
Ich glaube das ist genau das was ich suche.
Allerdings habe ich eine Frage und ein Problem. Zuerst zur Frage. Ich möchte ja nur eine bestimmte Spalte in die ComboBox übertragen, ist dies möglich?

Dann zu meinem Problem. Meine Tabelle (tableID) und meine ComboBox(heimTeam) geben jeweils einen Fehler aus, und zwar dass ich den Typ von tableID und heimTeam auf static ändern muss. Wenn ich dies tue, bekomme ich aber Fehler bei getSelectedRow und getColumnCount....


Java:
public static void zeilenlesen() {
 
        int a = tableID.getSelectedRow();
        int b = tableID.getColumnCount();
 
        String[] zeilenwert = new String[b];
        
        for (int i = 0; i < b; i++) {
 
            zeilenwert[i] = ((String) tableID.getValueAt(a, i));
//          System.out.println(zeilenwert[i]);
        }


Java:
for (int i = 0; i <= zeilenwert.length; i++) {
            heimTeam.addItem(zeilenwert[i]));
             }
 

Grimnir

Mitglied
Weis jetzt nicht wie dein Code aufgebaut ist.
Da die Methode aber statisch ist verlangt sie auch nach statische Variablen.
Nehm einfach mal das static aus der Methode.
So:
Java:
public void zeilenlesen()

Da kannst du ein wenig schmökern:
Galileo Computing :: Java ist auch eine Insel - 5 Eigene Klassen schreiben


ich möchte ja nur eine bestimmte Spalte in die ComboBox übertragen, ist dies möglich?

Natürlich sind auch bestimmte Zeilen/Spalten/Zelleninhalte möglich.

Glaub : getValueAt( rowIndex, columnIndex );

Die werte dann über geschachtelte Schleifen hohlen.
ungefähr so:
Java:
for (int i = 0; i < rowCnt; i++) {
				for (int j = 0; j < clmCnt; j++) {
        }
}


Das müsste Interessant für dich sein:
Galileo Computing :: Java ist auch eine Insel – 19.19 Tabellen (JTable)
 

dzim

Top Contributor
Das Problem mit der Variante ist: du musst erst aus der Liste, die die Tabellendaten darstellt, Daten für die ComboBox extrahieren und dann wieder in eine Liste packen. Allein schonum speicher zu sparen verwende einfach die Items der Tabelle und passe deine Value und Cell Factories an... Alles andere ist eher kontraproduktiv (auch wenn es am Ende sicher auch zum ziel führen wird).
 

dzim

Top Contributor
Kleines Beispiel, was ich meine...

Java:
	@FXML
	private ComboBox<ConnectionType> comboBoxConnType;

	@FXML
	public void initialize() {
		// connectionTypeItems ist eine ObservableList<ConnectionType> 
		// hier müsstest du so etwas machen wie table.getItemst()
		comboBoxConnType.setItems(connectionTypeItems);
		
		// mit dem werden deine Daten korrekt aus deinem Modell gewählt
		// hier kannst du die richtige "Spalte" wählen
		// also die Daten, die deine Tabelle in Spalte X darstellt  
		comboBoxConnType.setCellFactory(new ConnectionTypeCellFactory());
		
		// es kann sein, dass der Converter für dich sogar eher irrelevant ist...
		// ich weiss gerade selbst nicht mehr, wofür ich den brauchte :-D
		comboBoxConnType.setConverter(new ConnectionTypeStringConverter());

		// eye-candy
		if (comboBoxConnType.getItems().size() == 1) {
			comboBoxConnType.getSelectionModel().select(0);
		} else {
			comboBoxConnType.getSelectionModel().clearSelection();
		}
	}

	private final class ConnectionTypeCellFactory implements Callback<ListView<ConnectionType>, ListCell<ConnectionType>> {
		@Override
		public ListCell<ConnectionType> call(ListView<ConnectionType> param) {
			final ComboBoxListCell<ConnectionType> cell = new ComboBoxListCell<ConnectionType>() {
				
				{
					super.setPrefWidth(300);
				}
				
				@Override
				public void updateItem(ConnectionType item, boolean empty) {
					super.updateItem(item, empty);
					if (empty) {
						setText(null);
					} else {
						setTextOverrun(OverrunStyle.ELLIPSIS);
						setText(item.getText() != null && !item.getText().isEmpty() ? item.getText() : item.getId());
					}
				}
			};
			return cell;
		}
	}
	
	private final class ConnectionTypeStringConverter extends StringConverter<ConnectionType> {
		@Override
		public ConnectionType fromString(String string) {
			return null;
		}
		
		@Override
		public String toString(ConnectionType item) {
			return item.getText() != null && !item.getText().isEmpty() ? item.getText() : item.getId();
		}
	}
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
T Anbinden der Tabelle an die Daten AWT, Swing, JavaFX & SWT 5
F JavaFX Tabelle mit Daten füllen AWT, Swing, JavaFX & SWT 9
H Swing Tabelle nach Klick auf Button mit Daten füllen? AWT, Swing, JavaFX & SWT 2
Milady Annzeigen alle Daten aus der Tabelle AWT, Swing, JavaFX & SWT 6
E Daten aus sortierter Tabelle lesen AWT, Swing, JavaFX & SWT 2
T Tabelle und SQL Daten AWT, Swing, JavaFX & SWT 7
T SWT:Tabelle auf Knopfdruck mit aktualisierten Daten zeichnen AWT, Swing, JavaFX & SWT 9
C Daten in Tabelle einfügen AWT, Swing, JavaFX & SWT 8
H JTabel - RowFilter Daten für Berechnung filtern AWT, Swing, JavaFX & SWT 6
M Daten zufällig Einlesen aus einer Datei (binäres Format) AWT, Swing, JavaFX & SWT 7
W Nullpointer Exception beim übertragen von Daten von Scene zu Scene AWT, Swing, JavaFX & SWT 6
W Daten von Controller zu Controller übertragen AWT, Swing, JavaFX & SWT 7
D Columns unabhängig voneinander mit Daten füllen JavaFx AWT, Swing, JavaFX & SWT 1
H Daten aus einer XML(x83-Datei) in einem JFrame anzeigen lassen AWT, Swing, JavaFX & SWT 9
A JavaFX Daten in eine HTML-Table mit JS schreiben AWT, Swing, JavaFX & SWT 3
ralfb1105 JavaFX Daten zwischen Controllern austauschen- neue Frage AWT, Swing, JavaFX & SWT 7
ralfb1105 JavaFX Daten zwischen Controller "austauschen" AWT, Swing, JavaFX & SWT 65
B AWT Bot um Daten auf Website einzugeben und die Antwort zu bekommen AWT, Swing, JavaFX & SWT 2
L Daten bearbeiten ohne GUI zu blockieren - daten haltung/zurück geben AWT, Swing, JavaFX & SWT 15
ralfb1105 Swing JComboBox update der Daten AWT, Swing, JavaFX & SWT 8
ralfb1105 Swing Dynamischer Graph zum anzeigen Perfomance Daten AWT, Swing, JavaFX & SWT 35
D MySQL Daten in JTable anzeigen AWT, Swing, JavaFX & SWT 2
K TreeTableView (cellFactory) - wie Daten in Spalten einfügen AWT, Swing, JavaFX & SWT 0
A JTable mit Daten füllen AWT, Swing, JavaFX & SWT 1
J TableView Daten werden nicht ausgegeben AWT, Swing, JavaFX & SWT 9
A Swing Wie Daten in der Form speichern? Array oder ArrayList AWT, Swing, JavaFX & SWT 2
C Swing Daten in JTable wiedergeben per TableModel und MVC Pattern AWT, Swing, JavaFX & SWT 16
T JavaFX Model Daten übergeben AWT, Swing, JavaFX & SWT 4
D Swing Größe einer JComboBox im GridBagLayout aufgrund der maximalen Länge der enthaltenen Daten AWT, Swing, JavaFX & SWT 7
J JavaFX Tableview Daten hinzufügen aus anderer Klasse AWT, Swing, JavaFX & SWT 7
J Tableview Daten hinzufügen und aktualisieren AWT, Swing, JavaFX & SWT 5
S AWT Daten über TextField und Button in array speichern AWT, Swing, JavaFX & SWT 5
G Event Handling TableView daten in ein neues Fenster herauslesen? AWT, Swing, JavaFX & SWT 3
S JavaFX (Best Practise) Daten zwischen Controllern austauschen AWT, Swing, JavaFX & SWT 1
thet1983 JavaFX TableView Objekt Daten anzeige AWT, Swing, JavaFX & SWT 2
L JavaFX Verzögerung beim Laden von Daten AWT, Swing, JavaFX & SWT 6
L Daten in neuem Fenster AWT, Swing, JavaFX & SWT 2
Tort-E JavaFX Daten an WebView Komponente AWT, Swing, JavaFX & SWT 1
I JTable: Doppelklick auf Table soll neues Fenster öffnen und Daten aus JTable anzeigen AWT, Swing, JavaFX & SWT 4
S JTable Daten aus Array AWT, Swing, JavaFX & SWT 9
M Java FX Daten an Controller übergeben AWT, Swing, JavaFX & SWT 3
S JList ist leer, aber DefaultListModel hat die Daten? AWT, Swing, JavaFX & SWT 9
M JavaFX Von FXML-Controllerdatei Daten zurückgeben AWT, Swing, JavaFX & SWT 6
B Swing JTable mit Daten - Reihen-Größe anpassen AWT, Swing, JavaFX & SWT 0
D Applet GWT speichert Daten nicht in Datenbank AWT, Swing, JavaFX & SWT 2
S SWT In Listen den Einträgen Daten zuordnen AWT, Swing, JavaFX & SWT 2
T SWT Table (mit Spinner Spalte) Daten auslesen AWT, Swing, JavaFX & SWT 4
F Swing JTable: Daten voreinstellen AWT, Swing, JavaFX & SWT 4
B Daten in eine JTable schreiben AWT, Swing, JavaFX & SWT 3
H Swing JfreeChart aktualisieren - mit daten aus thread AWT, Swing, JavaFX & SWT 3
J valueChanged()-Methode liefert unbrauchbare Daten AWT, Swing, JavaFX & SWT 4
B Datenübergabe zwischen Tabs und Daten speichern AWT, Swing, JavaFX & SWT 2
D SWT TreeViewer: Daten aus Model gelöscht... trotzdem noch im Baum AWT, Swing, JavaFX & SWT 4
D Daten von JDialog an JTable in JFrame übergeben AWT, Swing, JavaFX & SWT 7
O JTable zeigt die alte Daten wieder AWT, Swing, JavaFX & SWT 23
H JTable zeigt keine Daten an AWT, Swing, JavaFX & SWT 5
M Swing Daten von JPanel zu JFrame senden AWT, Swing, JavaFX & SWT 13
C Swing JTable Daten einfügen AWT, Swing, JavaFX & SWT 6
Ollek IndexOutOfBoundsException bei neuen Daten in JTable AWT, Swing, JavaFX & SWT 13
J Swing JTable-Daten Speichern und bei zeilen-änderung beibehalten. AWT, Swing, JavaFX & SWT 6
A Daten umherschieben zwischen zwei Klassen AWT, Swing, JavaFX & SWT 40
L [SWT] Daten und Bilder drucken AWT, Swing, JavaFX & SWT 2
M Trotz richtiger Daten, falsches Bild wird gezeichnet?! AWT, Swing, JavaFX & SWT 4
O JFrame: Daten alle paar Sekunden aktualisieren AWT, Swing, JavaFX & SWT 3
C Daten aus DB -> JTable aktualisieren klappt nicht AWT, Swing, JavaFX & SWT 16
A Swing(Daten zugreifen) AWT, Swing, JavaFX & SWT 25
S JComboBox - veränderliche Daten AWT, Swing, JavaFX & SWT 6
T Daten mittels ComboBox in ein JTable adden AWT, Swing, JavaFX & SWT 7
Ollek Realisierung: JTable zur Laufzeit mit neuen Daten füllen AWT, Swing, JavaFX & SWT 3
GianaSisters Swing jTable Daten unsichtbar AWT, Swing, JavaFX & SWT 12
T JTree Daten in DB schreiben am besten SQL AWT, Swing, JavaFX & SWT 21
W Daten auf Textfeld in anderer Klasse verwenden AWT, Swing, JavaFX & SWT 4
T Daten der gesamten Woche anzeigen AWT, Swing, JavaFX & SWT 2
D Problem mit JFileChooser -> Daten werden mit anführungsstriche in JTable geschrieben AWT, Swing, JavaFX & SWT 8
H JList zeigt die Daten aus dem Array nicht an! AWT, Swing, JavaFX & SWT 13
E Daten von JDialog nach JFrame übertragen AWT, Swing, JavaFX & SWT 4
K TableModel mit Daten aus Datenbank füllen AWT, Swing, JavaFX & SWT 7
M JTree mit eigenen Knoten - Zugriff auf Daten AWT, Swing, JavaFX & SWT 6
L Swing Daten in JTable aktualisieren AWT, Swing, JavaFX & SWT 5
B Swing JList Daten löschen AWT, Swing, JavaFX & SWT 13
R Swing XML Datei in JTree, Problem mit Daten einlesen AWT, Swing, JavaFX & SWT 34
A SWT: Daten in Raster mit Gitternetzlinien darstellen AWT, Swing, JavaFX & SWT 7
C Swing JTextField-Daten über mehrere Dialoge AWT, Swing, JavaFX & SWT 18
K TableModel Daten übergeben AWT, Swing, JavaFX & SWT 9
Milady Swing Änderung von Daten mit sql AWT, Swing, JavaFX & SWT 2
J Daten aus einer Textdatei in ArrayList holen AWT, Swing, JavaFX & SWT 9
X Swing Daten aus Vector ins TableModel ?? AWT, Swing, JavaFX & SWT 12
T Swing Liste von Daten anzeigen AWT, Swing, JavaFX & SWT 4
S Swing Daten aus Datenbank in JTable AWT, Swing, JavaFX & SWT 2
E JCombobox mit Daten aus DB füllen AWT, Swing, JavaFX & SWT 9
L Daten werden in JTable nicht angezeigt:( AWT, Swing, JavaFX & SWT 6
P Swing Liste von Daten auf JFrame AWT, Swing, JavaFX & SWT 6
X Swing JList -> Daten anders darstellen als im Model hinterlegt -> möglich ? AWT, Swing, JavaFX & SWT 9
X Doppelte Daten in DefaultListModel unterbinden AWT, Swing, JavaFX & SWT 3
ModellbahnerTT SWT Daten zur nächsten WizardPage senden AWT, Swing, JavaFX & SWT 4
J Daten in JTable nach Sortierung auslesen AWT, Swing, JavaFX & SWT 2
hdi Swing JTable & Filtern: Daten nicht in der View AWT, Swing, JavaFX & SWT 2
S JTable Bug - eingegebene Daten werden falsch geparst :( AWT, Swing, JavaFX & SWT 4
L AWT Daten vom Dialog an Frame senden AWT, Swing, JavaFX & SWT 3
hdi Swing JTable: Löschen vom Daten im Model AWT, Swing, JavaFX & SWT 7

Ähnliche Java Themen

Neue Themen


Oben