我无法在java中编辑JComboBox。虽然我已将属性设置为true但仍然没有用。当我将该属性设置为可编辑时,我甚至无法使用或选择其下拉列表中的值
JComboBox comboBoxEmployeeID = new JComboBox();
comboBoxEmployeeID.setModel(new DefaultComboBoxModel(new String[] {"45", "67", "78", "97"}));
comboBoxEmployeeID.setEditable(true);
comboBoxEmployeeID.setEnabled(true);
comboBoxEmployeeID.setBounds(140, 13, 163, 20);
add(comboBoxEmployeeID)
还有一点是,当我只是快速查看Eclipse中的设计/测试和预览时,我得到了一个可编辑且完美的JComboBox,但是一旦我调试问题就出现了
答案 0 :(得分:0)
您的问题可能是由代码的另一部分引起的。你能为整个框架(或应用程序)添加代码吗?如果我在你的问题中测试代码(使用Java 8 [1.8.0_65]和IntelliJ 15),它在我的机器上工作正常:
import javax.swing.*;
public class ComboBoxNoChange {
public static void main(final String[] arguments) {
SwingUtilities.invokeLater(() -> new ComboBoxNoChange().createAndShowGui());
}
private void createAndShowGui() {
final JFrame frame = new JFrame("Stack Overflow");
frame.setBounds(100, 100, 800, 600);
frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
final JPanel panel = new JPanel();
panel.add(createComboBox(new String[]{"45", "67", "78", "97"}));
frame.getContentPane().add(panel);
frame.setVisible(true);
}
private JComboBox<String> createComboBox(String[] employeeIDs) {
JComboBox<String> employeeIdComboBox = new JComboBox<>();
employeeIdComboBox.setModel(new DefaultComboBoxModel<>(employeeIDs));
employeeIdComboBox.setEditable(true);
employeeIdComboBox.setEnabled(true);
employeeIdComboBox.setBounds(140, 13, 163, 20);
return employeeIdComboBox;
}
}