gpt4 book ai didi

java - 通过触发事件在 JComboBox 中 setSelectedItem

转载 作者:行者123 更新时间:2023-12-01 18:29:49 26 4
gpt4 key购买 nike

我有一个JComboBox

JComboBox tableChoose = new JComboBox();
tableChoose.addItem("Bill");
tableChoose.addItem("Bob");
tableChoose.setSelectedItem("Bill");

以及一些处理方法

public void addComboActionListener(IComboHandler handler){
tableChoose.addActionListener(handler);
}

public Object getTableChooseSelectedItem(){
return tableChoose.getSelectedItem();
}

public void actionPerformed(ActionEvent event) {
JOptionPane.showMessageDialog(null, fileReaderWindow.getTableChooseSelectedItem() , null, JOptionPane.ERROR_MESSAGE);
}

如您所见,我将“Bill”设置为第一个选定的项目。当我运行程序时,我必须重新选择“Bill”才能在 actionPerfomed 中触发事件。

有没有办法在不重新选择 JComboBox 中的项目的情况下触发事件?预先感谢您。

最佳答案

在设置所选项目之前添加操作监听器:

JComboBox<String> b = new JComboBox<String>();

b.addItem("A");
b.addItem("B");
b.addItem("C");

b.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
JComboBox<String> src = (JComboBox<String>) e.getSource();
System.out.println("ActionListener called. '"+src.getSelectedItem()+"' selected.");
}
});

b.setSelectedItem("A");

输出:

ActionListener called. 'A' selected.

关于java - 通过触发事件在 JComboBox 中 setSelectedItem,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24740494/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com