Hallo,
ich bin grade irgendwie etwas verblüfft über die JComboBox.
Vielleicht steh ich auch nur auf dem Schlauch
Wenn ich mir den selectedIndex() ausgeben lasse und die Inhalte der JCombobox sind GLEICH,
dann kriege ich immer den kleinsten Index zurückgelifert.
Wieso ist das so?
Bsp:
Combobox mit Inhalt "5","5", "5", "anders"
liefert als index immer nur 0 oder 3 :?:
Wie kann ich das vermeiden?
Ich möchte Datumswerte selektieren
Wobei jedes Datum mehrfach auftreten kann.
Über den selectedIndex() wollte ich dann auf den Inhalt einer ArrayList zugreifen und den "zugehörigen" Wert dort rauslesen....
mfg Verjigorm
Zur Veranschaulichung:
ich bin grade irgendwie etwas verblüfft über die JComboBox.
Vielleicht steh ich auch nur auf dem Schlauch
Wenn ich mir den selectedIndex() ausgeben lasse und die Inhalte der JCombobox sind GLEICH,
dann kriege ich immer den kleinsten Index zurückgelifert.
Wieso ist das so?
Bsp:
Combobox mit Inhalt "5","5", "5", "anders"
liefert als index immer nur 0 oder 3 :?:
Wie kann ich das vermeiden?
Ich möchte Datumswerte selektieren
Wobei jedes Datum mehrfach auftreten kann.
Über den selectedIndex() wollte ich dann auf den Inhalt einer ArrayList zugreifen und den "zugehörigen" Wert dort rauslesen....
mfg Verjigorm
Zur Veranschaulichung:
Code:
package comboBoxtest;
import javax.swing.SwingUtilities;
import java.awt.BorderLayout;
import javax.swing.DefaultComboBoxModel;
import javax.swing.JPanel;
import javax.swing.JFrame;
import javax.swing.JComboBox;
public class SameValueTest extends JFrame {
private static final long serialVersionUID = 1L;
private JPanel jContentPane = null;
private JComboBox jComboBox = null;
/**
* This method initializes jComboBox
*
* @return javax.swing.JComboBox
*/
private JComboBox getJComboBox() {
if (jComboBox == null) {
jComboBox = new JComboBox();
DefaultComboBoxModel model = new DefaultComboBoxModel();
model.addElement("5");
model.addElement("5");
model.addElement("5");
jComboBox.setModel(model);
// jComboBox.addItem("5");
// jComboBox.addItem("5");
// jComboBox.addItem("5");
jComboBox.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent e) {
System.out.println("actionPerformed(): " + jComboBox.getSelectedIndex());
}
});
}
return jComboBox;
}
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
SwingUtilities.invokeLater(new Runnable() {
public void run() {
SameValueTest thisClass = new SameValueTest();
thisClass.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
thisClass.setVisible(true);
}
});
}
/**
* This is the default constructor
*/
public SameValueTest() {
super();
initialize();
}
/**
* This method initializes this
*
* @return void
*/
private void initialize() {
this.setSize(300, 200);
this.setContentPane(getJContentPane());
this.setTitle("JFrame");
}
/**
* This method initializes jContentPane
*
* @return javax.swing.JPanel
*/
private JPanel getJContentPane() {
if (jContentPane == null) {
jContentPane = new JPanel();
jContentPane.setLayout(new BorderLayout());
jContentPane.add(getJComboBox(), BorderLayout.SOUTH);
}
return jContentPane;
}
}