当我从组合框中选择任何项目时,我想写一些文本字段。但我不能这样做。
Java代码:
comboBox.addItemListener(new ItemListener() {
public void itemStateChanged(ItemEvent arg0) {
if(comboBox.getSelectedItem()=="apple") {
tfbf.setText("apple selected");
}
}
});
答案 0 :(得分:5)
由于您未提供任何有效示例。您将对象观察等式与equals(..)
进行比较,而不是==
。
"apple".equals(comboBox.getSelectedItem())
了解更多How do I compare strings in Java?
==
测试参考相等性。
.equals()
测试价值平等。
答案 1 :(得分:3)
comboBox.addItemListener(new ItemListener() {
public void itemStateChanged(ItemEvent arg0)
{
if(comboBox.getSelectedItem()=="apple")
{
tfbf.setText("apple selected");
}
}
});
可能写得更好:
comboBox.addItemListener(new ItemListener() {
public void itemStateChanged(ItemEvent arg0)
{
tfbf.setText(comboBox.getSelectedItem() + " selected");
}
});