用新值重置 ComboBox
Reset ComboBox with new values
如何使用新值重新加载 JComboBox 对象?
我是否应该再次将 JComboBox 对象重新添加到面板以查看显示的新值,P.S。我去掉了将新值添加到堆栈的方法,我希望在“????”之后达到我的目标。注释,如您所见,ComPort 是我希望在组合框中使用其新值的数组>
<i>
public class Test {
static String [] ComPort={"No Ports Available"};
static Stack ComPortList=new Stack();
static JPanel Pan=new JPanel();
static JComboBox Com=null;
static JFrame Fra=new JFrame();
public Test()
{
Com=new JComboBox(ComPort);
Fra.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Fra.setSize(750, 750);
Pan.add(Com);
Pan.setPreferredSize(new Dimension(500,500));
Fra.setVisible(true);
Fra.setResizable(false);
Fra.add(Pan);
}
public static void main(String args[])
{
new Test();
AvailablePort();
for(int i=0;i<100;i++)
if(ComPortList.isEmpty())
break;
else
ComPort[i]=(String) ComPortList.pop();
Com=new JComboBox(ComPort);
//????
}
</i>
您可以获取 ComboBoxModel 并使用它来删除所有现有项目并添加新项目,或者创建一个新的 JComboBox 并将新项目传递给其构造函数可能更容易。
JComboBox 允许您清除所有项目然后添加新项目。
JComboBox<String> box = new JComboBox<String>(new String[]{"No Ports Available"});
box.removeAllItems(); // Clear all items.
for(int i=0; i<10; i++) // Add your new items.
box.addItem("# "+i);
如何使用新值重新加载 JComboBox 对象? 我是否应该再次将 JComboBox 对象重新添加到面板以查看显示的新值,P.S。我去掉了将新值添加到堆栈的方法,我希望在“????”之后达到我的目标。注释,如您所见,ComPort 是我希望在组合框中使用其新值的数组>
<i>
public class Test {
static String [] ComPort={"No Ports Available"};
static Stack ComPortList=new Stack();
static JPanel Pan=new JPanel();
static JComboBox Com=null;
static JFrame Fra=new JFrame();
public Test()
{
Com=new JComboBox(ComPort);
Fra.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Fra.setSize(750, 750);
Pan.add(Com);
Pan.setPreferredSize(new Dimension(500,500));
Fra.setVisible(true);
Fra.setResizable(false);
Fra.add(Pan);
}
public static void main(String args[])
{
new Test();
AvailablePort();
for(int i=0;i<100;i++)
if(ComPortList.isEmpty())
break;
else
ComPort[i]=(String) ComPortList.pop();
Com=new JComboBox(ComPort);
//????
}
</i>
您可以获取 ComboBoxModel 并使用它来删除所有现有项目并添加新项目,或者创建一个新的 JComboBox 并将新项目传递给其构造函数可能更容易。
JComboBox 允许您清除所有项目然后添加新项目。
JComboBox<String> box = new JComboBox<String>(new String[]{"No Ports Available"});
box.removeAllItems(); // Clear all items.
for(int i=0; i<10; i++) // Add your new items.
box.addItem("# "+i);