Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Werte aus ComboBox auslesen

Empfohlene Antworten

Hallöchen,

ich hab da mal'ne Frage...wie sollte es anders sein *g*

Ich habe eine ComboBox programmiert, aus der ich die vom User ausgewählten

Werte ausgeben lassen möchte...

Das ist der Code für die erste Box:

JComboBox combo1 = new JComboBox();

for ( int i = 0; i < fach.length; i++ )

{

combo1.addItem( fach );

}

frame.getContentPane().add( combo1, BorderLayout.WEST );

combo1.addItemListener( new ItemListener()

{

public void itemStateChanged( ItemEvent e )

{

System.out.println(e.getItem());

JComboBox selectedChoice = (JComboBox)e.getSource();

if ( selectedChoice.getSelectedItem().equals("Ende") )

{

System.exit(0);

}

}

});

Wenn ich dann was auswähle, gibt er mir aber leider nicht das betreffende Wort sondern einen ellenlangen Text, etwa so was:

java.awt.event.ItemEvent[iTEM_STATE_CHANGED,item=Netzwerke1,stateChange=SELECTED] on javax.swing.JComboBox[,0,0,103x25,layout=javax.swing.plaf.metal.MetalComboBoxUI$MetalComboBoxLayoutManager,alignmentX=null,alignmentY=null,border=,flags=328,maximumSize=,minimumSize=,preferredSize=,isEditable=false,lightWeightPopupEnabled=true,maximumRowCount=8,selectedItemReminder=Netzwerke1]

Netzwerke1

...aus! Blöd, oder?! Ich möchte in dem Fall doch nur "Netzwerke1" ausgegeben haben... :confused:

Gruß Silvie

Servus.

Ich bin zwar in Swing nicht mehr so fit, da ich mehr mit SWT arbeite, aber bekommst Du da nicht ein Object zurück, von dem der Event ausgegangen ist? In diesem Fall die ComboBox?

Evtl. musst Du noch von der ComboBox den Text holen. Also e.getItem() auf ComboBox casten und mit getText() oder so ähnlich den selektierten Eintrag holen.

Peter

Hi!

Ich würde eher sagen das du entweder mit der JComboBox Methode

getSelectedItem() den selektierten Wert holst und als String castest oder

du holst dir mit getSelectedIndex() den Index des selektierten Wertes und mit Hilfe von diesem holst du dir dann den Wert aus dem String Array...

@Peter: du meinst sicherlich AWT und nicht SWT oder? ;)

Gruß

Azrael

Nein, ich meine schon SWT.

http://www.eclipse.org

Das ist mit SWT geschrieben.

Peter

Hallo,

Du musst nicht das Event Objekt abfragen sondern nur die ComboBox selbst.

Also nicht :

System.out.println(e.getItem());

sondern :

public void itemStateChanged( ItemEvent e )

{

if (e.getStateChange() == ItemEvent.SELECTED)

{

System.out.println( <ComboBox Name>.getSelectedItem());

}

}

Dann gibt er dir den Wert der dort in der ComboBox steht aus.

Ich hatte bis jetzt noch Schwierigkeiten damit, dass wenn ich was ausgewählt habe,

zuerst noch mal das vorherige Item angezeigt wurde...

das konnte ich jetzt mit der Methode von DJ Gottschalk lösen...Danke!! ;)

Ein schönes Wochenende,

Silvie

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.