java JComboBox创建,添加模型,侦听项更改(用户选择)

・2 分钟阅读

以下源代码片段显示了如何创建JComboBox,设置一个简单的DefaultComboBoxModel,最重要的是,向它添加一个ItemListener,以便你的代码可以对更改组合框中的用户做出反应。

源代码是用Scala编写的,但是就像你所看到的,它很容易转换为Java :

// create a jcombobox
val languagesComboBox = new JComboBox
// give it a simple model
val languagesModel = new DefaultComboBoxModel(Array(\"Java\",\"JSON\",\"PHP\",\"Play\",\"Python\"))
languagesComboBox.setModel(languagesModel)

下面的源代码例子演示如何为JComboBox创建侦听器,在本例中为ItemListener

// handle the case where the user changes the item selection in the jcombobox
val itemListener = new ItemListener {
 def itemStateChanged(itemEvent: ItemEvent) {
 val state = itemEvent.getStateChange
 if (state == ItemEvent.SELECTED) {
 val item = itemEvent.getItem.toString //\"Java\",\"JSON\", etc.
 // now you can do something with the `item`, which is a String
 }
 }
}

在itemStateChanged方法中所要做的就是处理item,这是当前在JComboBox中显示的String 。

注意,你需要检查state是否等于ItemEvent.SELECTED每次更改JComboBox选择时,会激发两个事件,一个用于选择的项,一个是选定的事件。

Xn_warm profile image