我想要做的是隻要按下「刪除」按鈕,它就會刪除我在JComboBox中選擇的項目。所以一旦我刪除所有的項目,我有另一個名爲「重置」的按鈕,其中所有已刪除的項目將再次在JComboBox中,並且有可能有一個恢復方法,而不必重新添加每個模型,導致我的實際的程序有很多模型Java重新添加已從JComboBox中刪除的項目
這是我所嘗試過的,但它不工作任何建議如何做到這一點?
public class Testing{
JFrame frame;
JPanel panel;
JButton remove,reset;
JComboBox box;
final DefaultComboBoxModel items = new DefaultComboBoxModel(new String[]
{
"-","Database System","Computer Fundamentals",
"Computer Maths","Internet Web Tech","Tertiary English 1"
});
public void display()
{
frame = new JFrame();
panel = new JPanel();
box = new JComboBox();
box.setModel(items);
remove = new JButton("Remove");
reset = new JButton("Reset");
remove.addActionListener((ActionEvent e)->{
box.removeItem(box.getSelectedItem());
});
reset.addActionListener((ActionEvent e)->{
System.out.println("Reset");
box.setModel(items);
box.revalidate();
box.repaint();
});
panel.revalidate();
panel.repaint();
panel.add(box);
panel.add(remove);
panel.add(reset);
frame.add(panel);
frame.setVisible(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(300,300);
}
public static void main(String[] args)
{
TestingProgram te = new TestingProgram();
te.display();
}
}
加復位的ActionListener內打印語句,以確保它的實際發射 –
是的,我且將其被解僱 –