selektierter Datensatz in JList als String Datentyp

Einklang.

Bekanntes Mitglied
Ich habe nun einen Datensatz in einer JList makieren können mit einen ActionListListener - jetzt möchte ich den Wert dieses selektierten Datensatzes als String auslesen - als int funktioniert es soweit......!

Wie kann ich einen selektierten Datensatz aus einer JList denn als String auslesen?
Dazu finde ich keine passende Lösung in der Api für JList......!

Danke
 

Einklang.

Bekanntes Mitglied
Naja das beantwortet halt nicht meine Frage - leider ist in der API von JList keine Angabe, welche Methode den Wert in einen String umwandelt.......... und daher werde ich das auch nicht in dem Beispiel finden! ;-)

Würde ich jetzt nicht schon geschaut haben, würde ich mich wieder tagelang mit dem Beispiel rumschlagen ohne dort jemals auf eine Lösung zu stoßen - na vielen Dank!!

Oder kannst du mir direkt sagen, wo dort in den Beispielen ein selektierter Wert als String ausgelesen wird - wo finde ich das???
 

Einklang.

Bekanntes Mitglied
Noch was Wichtiges als Nachtrag:

Ich hab ja die MEthode "getSelectedValue" im Auge dafür, komm aber mit der Anwendung nicht so ganz klar.
JList (Java Platform SE 7 )

Was ist das mit "public E"? Wie verfahr ich da weiter, wo steht dann der Wert drin (was gebe ich zb. bei system.out.println(??) in die Klammer?
 

Michael...

Top Contributor
Wie in einem anderen Post bereits erwähnt, erhält man mit der getSelectedValue() das aktuell selektierte Objekt. Wenn das Objekt ein String ist gibt es unzählige Möglichkeiten dies in einen String zu wandeln. Dies hat allerdings nichts mit JList zu tun. Methoden dazu liefert z.B. die Klasse String selbst (siehe API Doku String) oft reicht auch die toString() welche jedes Object besitzt. Wenn man "weiß" von welchem Typ das Objekt ist kann man als weitere Möglichkeit auch noch casten:
Code:
String text = (String)selectedObject;
 

Michael...

Top Contributor
Was ist das mit "public E"? Wie verfahr ich da weiter, wo steht dann der Wert drin (was gebe ich zb. bei system.out.println(??) in die Klammer?
Das ist die generische Erweiterung der Klasse seit Java 7. Somit kann/sollte man direkt bei der Initialisierung angeben von welchem Typ die Objekte sind, die die JList beinhaltet. Die Methode getSelectedValue() liefert somit dann auch ein Objekt dieses Types zurück. Geht allerdings erst ab Java 7.
 

Einklang.

Bekanntes Mitglied
Ja danke gut erklärt - bringt mir aber jetzt nicht wirklich was! ;-) Ist irgendwie so wie im Englischunterricht wenn Grammatik erklärt wird und dann sich wundern warum keiner Englisch sprechen kann.......! Man besuche mal einen Kurs "Deutsch für Ausländer" - so hat niemand von uns Deutsch gelernt! :-D

Kann ich wieder irgendwas irgendwo herumsuchen ohne zu wissen wonach ich genau suche und ob es das richtige ist wenns mir begegnet.......! ;-)
Achja genau stimmt ja - ich kann nochmal 10 Fragen hier reinstellen, sonst würde man mirs ja zu einfach machen...! :-D


Also:
Wenn das Objekt ein String ist gibt es unzählige Möglichkeiten dies in einen String zu wandeln. Dies hat allerdings nichts mit JList zu tun. Methoden dazu liefert z.B. die Klasse String selbst (siehe API Doku String) oft reicht auch die toString() welche jedes Object besitzt

Wenn ich sowas jetzt nehme, dann probier ich das mal aus (weil ich in den letzten zig Monaten ja doch irgendwie was mitbekommen hab - wobei ich mich ärgere was ich hätte alles mitbekommen können und nicht habe... dank solcher Erklärungen die mich wieder sinnlos beschäftigen) - dann mach ich sowas wie :
Java:
object listeob = jlist.getselectedvalue();
String stringliste = listeob.toString()
??
Dann hab ich nämlich genau das Problem dass ich wieder einfach irgendwas mache - ob es Sinn macht oder nicht! Ich frag ja nicht hier damit ich einfach wieder irgendwas probiere, sondern um konkret ne Lösung zu haben die funktioniert - rumprobieren kann ich selber immer..... dafür brauchts kein Forum!

Also konkret bitte und keine Metainformationen sonst lern ich hier gar nix und eure Bemühungen (die wohl auch gut gemeint sind) verhallen im endlosen Raum des Internets......... ;-) (Metainformationen können erst fruchten wenn die konkreten Informationen da sind - obwohl mir klar ist dass heute allzu viele Leute von etwas reden wovon sie keine Ahnung haben...) ;-)
 

Michael...

Top Contributor
Also konkret bitte und keine Metainformationen
Hierbei handelt es sich nicht um Metainformationen, sondern um Grundlagen.
Wenn man sich mit der Java Programmierung beschäftigt sollte man sich irgendwann mit solchen Sachen beschäftigen (meiner Meinung: spätestens wenn man anfängt GUIs zu programmieren).
Klar kann man nicht sofort alles wissen, deshalb hab ich in dem Fall ja auch die Möglichkeiten, die es gibt aufgezeigt. Nun muss man sich aber selbst damit beschäftigen (in dem nachliest, Fragen stellt...) um heraus zu finden, was für den konkreten Zweck die geeigneteste Lösung/Vorgehensweise ist.

In Deinem konkreten Fall wäre es interessant zu wissen mit welcher Java Version bzw. für welche Java Version Du Dein Programm entwickelst
 

Einklang.

Bekanntes Mitglied
Java 7 Eclipse Indigo.

Naja ich hab eine LIste aus der ich dann ein Element selektieren möchte und mit dem Wert aus dem Element dann eine SQL Abfrage starten........ und das Ergebnis in einer weiteren JList anzeigen......!
 

Michael...

Top Contributor
Ich selbst nutze kein Java 7 aber dann sollte doch
Code:
JList<String> liste = new ....
gehen und die Methode
Code:
getSelectedValue()
einen String liefern.
 
C

Camino

Gast
Das
Code:
new
ist falsch und gehört da nicht hin.

Code:
Object myObject = list_1.getSelectedValue()
liefert dir ein Object zurück. (Keine Ahnung, was für Objekte du in deine Liste gesteckt hast.) Und aus diesem Object musst du nun einen String machen (Stichwörter: cast oder evtl. toString-Methode).
 

Einklang.

Bekanntes Mitglied
Super so jetzt funktionierts:

Java:
list_1.addListSelectionListener(new ListSelectionListener() { 
			public void valueChanged(ListSelectionEvent event) {
				int index = list_1.getSelectedIndex();
				System.out.println(index);
				// Wert aus index herauslesen als String
				Object listobject = list_1.getSelectedValue();
				String objektstring = listobject.toString();
				System.out.println("Das Objekt: " + listobject);
				System.out.println(objektstring);
				// Neue SQL Abfrage mit dem String-Wert
				// Spalten und Datentyp der Spalte aus dem Ergebnis auflisten
				// SPalten und Datentyp in weitere JListen anzeigen
        	}});

Wieder was gelernt - diesmal über den Umgang mit Objekten......!
In den Kommentaren seht ihr schon meine nächsten Fragen ;-)! Jetzt muss ich mal schauen ob ich alles in dieser Methode mache oder eine neue anfangen muss usw....!

Naja, bis später dann! ;-)
 

Einklang.

Bekanntes Mitglied
Jetzt hab ich zu diesem Code eine weitere Frage....

ich brauch den Wert in einer neuen Methode, also der SQL Abfrage. Am besten wär natürlich wenn die MEthode den String-Wert "objektstring" herausgeben würde.

Dieser Code zeigt jetzt den String-Wert der Selektion in einer JList an. Diesen Wert möchte ich jetzt für eine weiter SQL ABfrage nutzen und dann eine zweite JList darauf aufbauen......!

Im Grunde soll die Methode einfach nur schauen ob sicher der selektierte Datensatz ändern und diesen dann zurückgeben...! :)
 

Michael...

Top Contributor
Jetzt hab ich zu diesem Code eine weitere Frage....

ich brauch den Wert in einer neuen Methode, also der SQL Abfrage. Am besten wär natürlich wenn die MEthode den String-Wert "objektstring" herausgeben würde.
Die Listenermethode kann nichts zurück geben, Du müsstest den Wert also außerhalb des Listeners "speichern" -wenn das wirklich notwenig ist.
Wo bzw. wann wird denn die andere Methode aufgerufen?

Noch ein Hinweis zum ListSelectionListener:
Du solltest in der valueChanged() noch eine Überprüfung
Code:
if(!e.getValueIsAdjusting())
einbauen, da die Methode des Listeners bei Nutzeraktionen zweimal aufgerufen wird. siehe:
How to Use Lists (The Java™ Tutorials > Creating a GUI With JFC/Swing > Using Swing Components)
 

Einklang.

Bekanntes Mitglied
Hm.........!

Also wie gesagt möchte ich mit dem gerade selektierten Datensatz eine SQL Abfrage machen und dann eine zweite Liste füllen.
Das bedeutet, dass in der ersten JList eine Wahl getroffen wird und dann die weiteren Möglichkeiten in einer zweiten JList erscheinen..... eigentlich überall zu finden sowas........!

Wie lässt sich das denn realisieren, wenn ich den Wert gar nicht zurückbekomm?

Du müsstest den Wert also außerhalb des Listeners "speichern" -wenn das wirklich notwenig ist.

Wie??????? das ist ja meine Frage..... ;-)
 

Michael...

Top Contributor
Also wie gesagt möchte ich mit dem gerade selektierten Datensatz eine SQL Abfrage machen und dann eine zweite Liste füllen.
Das bedeutet, dass in der ersten JList eine Wahl getroffen wird und dann die weiteren Möglichkeiten in einer zweiten JList erscheinen..... eigentlich überall zu finden sowas........!
In dem Fall würdest Du die zweite Methode ja ohnehin aus dem Kontext der valueChanged aufrufen und hier hast Du den Wert ja verfügbar und kannst in dieser Methode übergeben. (abgesehen davon, dass man ja an jeder Stelle an der die JList bekannt ist, deren selectedValue() aufrufen kann)
Wie lässt sich das denn realisieren, wenn ich den Wert gar nicht zurückbekomm?
Wie??????? das ist ja meine Frage..... ;-)
Dann ist das gar nicht Dein Problem.
 

Einklang.

Bekanntes Mitglied
die zweite Methode ja ohnehin aus dem Kontext der valueChanged aufrufen

was bedeutet das programmiertechnisch bzw überhaupt?

abgesehen davon, dass man ja an jeder Stelle an der die JList bekannt ist, deren selectedValue() aufrufen kann

ja gut aber wenn er sich ändert? dann wird das erst bekannt wenn man das wieder abruft.... daher ja der listener, damit sich das immer direkt aktualisiert (sichtbar dann in der zweiten Liste,aber dafür muss der Wert in der ersten Liste ja schon da sein......)

Hm also wieder ein klarer Fall von Verklärung :-D!
 

Michael...

Top Contributor
was bedeutet das programmiertechnisch bzw überhaupt?
prinzipiell:
Java:
public void foo() {
    String s = "Hallo";
    bar(s);
}

public void bar(String text) {
    ...
}
Ich vermute mal, dass das nicht die Antwort auf Dein Problem ist. Eventuell schilderst Du mal Dein konkretes Problem und postest den Code mit dem Du es versucht hast zu lösen.
 

Einklang.

Bekanntes Mitglied
Hm kann ich nix mit den Beispielen anfangen - da steht ja nix mit valuechagned() usw....!

Naja ich habs ja hier shcon mehrmals erklärt:

Ich hab eine Jliste und kann nun wie oben im Code zu sehen ist auch das selektierte Element ausgeben als String.
Mit diesem String wert möchte ich nun die SQL Datenbank abfragen nach Werten in einer Spalte - wo dieser String-Wert aus der ersten JList eben zu finden ist - und diese Werte dann in einer weiteren JList ausgeben/anzeigen.

Code gibts nicht, weil ich wie schon gesagt ich eben diesen STring-Wert nicht aus der Methode bekomm....!

Also String-Wert aus der Methode nehmen, SQL Abfrage starten und das Ergebnis in einer zweiten JList anzeigen.......!

;-)
 

Michael...

Top Contributor
Hm kann ich nix mit den Beispielen anfangen - da steht ja nix mit valuechagned() usw....!
Ein bisschen Transferleistung sollte doch wohl drin sein?
Also String-Wert aus der Methode nehmen, SQL Abfrage starten und das Ergebnis in einer zweiten JList anzeigen.......!
Wie gesagt, muss der String auch gar nicht "aus" der Methode raus, da ja alles innerhalb eines "Ablaufs" passieren soll.
Java:
...
public void valueChanged(ListSelectionEvent event) {
    if(!event.getValueIsAdjusting()) {
        //Lesen des selektierten Wertes aus der JList list_1 und speichern in die Variable selectedValue
        String selectedValue = list_1.getSelectedValue().toString();
        
        //Kontrollausgabe der Selektion auf der Konsole
        System.out.println(selectedValue);
        
        //Aufruf der Methode zur Datenbankabfrage und Aktualisierung der zweiten Liste
        executeQueryAndRefreshDataOfList2(selectedValue);
    }
}
...
Ich ahne schon die nächste Frage...
 
W

Wurzelsepp

Gast
Warum nicht mal mit den Grundlagen beschäftigen. Es kann doch nicht sein, dass fast jeder Thread mit dir

Ja danke gut erklärt - bringt mir aber jetzt nicht wirklich was!

enthält. Irgendwie programmierst du anscheinend weit über deinen augenblicklichen Möglichkeiten.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
L Farbe des Auswahlrechtecks bei selektierter Tabellenzeile AWT, Swing, JavaFX & SWT 9
M JComboBox und selektierter Eintrag AWT, Swing, JavaFX & SWT 4
J Datensatz in jTable ausgeben AWT, Swing, JavaFX & SWT 3
T Swing JTable valueChanged datensatz löschen AWT, Swing, JavaFX & SWT 1
U JTable: Zeilen abhängig vom Datensatz einfärben AWT, Swing, JavaFX & SWT 4
B Jlist füllen AWT, Swing, JavaFX & SWT 4
H JList.setEnabled(false) - Text soll nicht grau sein AWT, Swing, JavaFX & SWT 2
BananenBrötchen Swing Arraylist in jList anzeigen AWT, Swing, JavaFX & SWT 6
J Swing JList wird nicht angezeigt AWT, Swing, JavaFX & SWT 6
A Swing JList zu JTree AWT, Swing, JavaFX & SWT 11
G Eingabe in JTextField in Array speichern und in JList ausgeben AWT, Swing, JavaFX & SWT 7
cezary Choice, JComboBox oder JList AWT, Swing, JavaFX & SWT 5
J JList scrollen AWT, Swing, JavaFX & SWT 3
Neumi5694 Swing JList - Klick abfangen AWT, Swing, JavaFX & SWT 3
G Swing Swing Binding JList funktioniert nicht AWT, Swing, JavaFX & SWT 5
M Swing JList Auswahl-GUI-Konzept AWT, Swing, JavaFX & SWT 9
C JList: Bestimmte Objekte ausschließen AWT, Swing, JavaFX & SWT 1
F JList aktualisiert nicht AWT, Swing, JavaFX & SWT 24
F JList auffüllen aus Array von Instanzen AWT, Swing, JavaFX & SWT 4
F Event wenn Maus eine JList verlässt AWT, Swing, JavaFX & SWT 13
F JList bei Windowbuilder AWT, Swing, JavaFX & SWT 8
F JList zeigt keine Einträge mehr AWT, Swing, JavaFX & SWT 1
P JList erstellen AWT, Swing, JavaFX & SWT 4
G DefaultListModel für JList AWT, Swing, JavaFX & SWT 2
P Einer JList mit eigenem ListModel einen Eintrag hinzfügen AWT, Swing, JavaFX & SWT 5
P Übergeben von ListModel an nichtparametrisierte JList AWT, Swing, JavaFX & SWT 8
M Ein Element in mehreren JList selektieren AWT, Swing, JavaFX & SWT 5
J Swing Probleme mit ListSelectionListener(), Inhalte der JList werden gelöscht? AWT, Swing, JavaFX & SWT 6
Z Swing Variable eines Objekt aus Hashmap in JList anzeigen AWT, Swing, JavaFX & SWT 1
Nabbit Über JList kein JPopupMenu AWT, Swing, JavaFX & SWT 2
O Swing JList beim Klicken in der GUI erstellen AWT, Swing, JavaFX & SWT 6
C Swing JList zeigt keine neuen Einträge an AWT, Swing, JavaFX & SWT 1
B Swing Auf JList-Elemente aus einer anderen Klasse zugreifen AWT, Swing, JavaFX & SWT 1
T Generische Klasse in JList über DefaultListModel AWT, Swing, JavaFX & SWT 1
T Swing WindowBuilder: JList wird nicht angezeigt AWT, Swing, JavaFX & SWT 2
C Button Text in JList neue Zeile AWT, Swing, JavaFX & SWT 6
C Hilfe bei JSpinner und JList AWT, Swing, JavaFX & SWT 1
D Swing ArrayList in Jlist/ List oder Array in JList/List AWT, Swing, JavaFX & SWT 5
S JList ist leer, aber DefaultListModel hat die Daten? AWT, Swing, JavaFX & SWT 9
M JList wird angezeigt, JTable (DefaultTableModel) nicht AWT, Swing, JavaFX & SWT 7
H Swing JList/JTable mit JButton, JTextField, Image, JComboBox und JLable AWT, Swing, JavaFX & SWT 2
D Swing Jlist Größe während der Laufzeit verändern. AWT, Swing, JavaFX & SWT 11
Q JList Update Problem AWT, Swing, JavaFX & SWT 1
W Sichtbarer Bereich JScrollPane vs. JList AWT, Swing, JavaFX & SWT 3
N AWT Markierte Zeile jList aus mySQL DB löschen AWT, Swing, JavaFX & SWT 2
S JList repaint AWT, Swing, JavaFX & SWT 1
F Swing JTextField in JList (Funktion beibehalten) AWT, Swing, JavaFX & SWT 2
H JList AWT, Swing, JavaFX & SWT 5
B Swing Bild von Webseite herunterladen, diese dann in JList anzeigen. AWT, Swing, JavaFX & SWT 1
B Swing Dynamische JList mit Bildern AWT, Swing, JavaFX & SWT 4
D JList&JButton erst nach Resize des JFRame sichtbar AWT, Swing, JavaFX & SWT 2
S JList Index finden AWT, Swing, JavaFX & SWT 6
3 Swing JList-Inhalt als verschlüsselte Datei schreiben und lesen AWT, Swing, JavaFX & SWT 1
N JComponenten in JList oder doch anders? AWT, Swing, JavaFX & SWT 0
S Swing JList, ArrayList + DefaultModel AWT, Swing, JavaFX & SWT 5
B Tabelleneinträge in JList anzeigen AWT, Swing, JavaFX & SWT 5
P JList/JScroolPane Text verschieben und text wrappen AWT, Swing, JavaFX & SWT 3
D Swing JList keine Selektionsänderung bei "dragged-Maus" AWT, Swing, JavaFX & SWT 4
M JList Model filtern AWT, Swing, JavaFX & SWT 4
K Swing JList - Element richtig hinzufügen AWT, Swing, JavaFX & SWT 4
T Swing Elemente der JList überlappend darstellen AWT, Swing, JavaFX & SWT 5
P Swing JList mit Objekten - Name anzeigen AWT, Swing, JavaFX & SWT 5
Ollek JList - neuer Eintrag in ArrayList dadurch keine Anzeige der Objekte AWT, Swing, JavaFX & SWT 18
K Mehrfachselektierungen in einer JList AWT, Swing, JavaFX & SWT 6
L Swing Component alignment innerhalb einer JList AWT, Swing, JavaFX & SWT 3
M Swing JList Listener AWT, Swing, JavaFX & SWT 20
M Accelerator zu JMenuItem des JPopupMenu einer JList AWT, Swing, JavaFX & SWT 2
S Swing JList wird nicht angezeigt AWT, Swing, JavaFX & SWT 3
M Element aus JList eines JFileChooser entfernen AWT, Swing, JavaFX & SWT 3
E selektiertes Element aus JList zurückgeben AWT, Swing, JavaFX & SWT 7
E JList /DefaultListModel mit Datenbank verbinden AWT, Swing, JavaFX & SWT 10
L SQL & Jtable o. JList AWT, Swing, JavaFX & SWT 5
K Swing JList und veränderte CellRenderer AWT, Swing, JavaFX & SWT 8
B JList + ListCellRenderer AWT, Swing, JavaFX & SWT 5
B JList -> Disabled AWT, Swing, JavaFX & SWT 6
J JList, Anzeige aktualisieren AWT, Swing, JavaFX & SWT 7
I Jlist isselectionEmpty AWT, Swing, JavaFX & SWT 4
I Jlist dynamisch aus Datenbank füllen AWT, Swing, JavaFX & SWT 14
R Swing unbegrenzte Anzahl vonEinträgen in JList AWT, Swing, JavaFX & SWT 2
MiMa Dateien aus Ordner in einer JList Ausgeben AWT, Swing, JavaFX & SWT 32
P Elemente einer JList ausgeben AWT, Swing, JavaFX & SWT 11
M JList mit 2-zeiligen Objekten füllen AWT, Swing, JavaFX & SWT 7
S JList mit Einträgen versehen schlägt fehl AWT, Swing, JavaFX & SWT 4
F Swing ArrayList in JList anzeigen und Objekte auswählen AWT, Swing, JavaFX & SWT 2
B JList zeigt Elemente nicht an AWT, Swing, JavaFX & SWT 3
S Fragen zu JList AWT, Swing, JavaFX & SWT 3
B Aktualisierung einer JList AWT, Swing, JavaFX & SWT 5
W JList valueChanges weiterleiten? AWT, Swing, JavaFX & SWT 14
D JButton-Click in JList mit Panels (auf dem der Button ist) AWT, Swing, JavaFX & SWT 6
E Jlist nur mit Klasse? AWT, Swing, JavaFX & SWT 5
D Swing JList <-> AdapterModel <-> Model AWT, Swing, JavaFX & SWT 4
1 JList - Elemente mit rechter Maustaste wählen AWT, Swing, JavaFX & SWT 6
M JList mit DefaultListModel und listener AWT, Swing, JavaFX & SWT 4
B JList nach dem Rendern sortieren AWT, Swing, JavaFX & SWT 3
T Wie ist das "Lookup-Verhalten" von JList, JCombobox änderbar? AWT, Swing, JavaFX & SWT 4
D JList items voneinander trennen AWT, Swing, JavaFX & SWT 10
E Keine Ausgabe von JList bei drücken von Button auf die Konsole AWT, Swing, JavaFX & SWT 7
M gleiches Element in JList mehrmals hintereinander auswählen AWT, Swing, JavaFX & SWT 6
T JList und Objekte AWT, Swing, JavaFX & SWT 7
M Swing JList Item in andere JList während Ausführung AWT, Swing, JavaFX & SWT 4

Ähnliche Java Themen

Neue Themen


Oben