如何检查是否通过单击或鼠标更改了Swing JList的valueChanged事件?

时间:2017-07-25 19:28:58

标签: java swing groovy swingbuilder

这是一些示例代码,使用Groovy的swingbuilder为JList的valueChanged事件创建代码:

    mainList.valueChanged = { event ->
        if (event.isAdjusting) {
            index = mainList.selectedIndex
            otherList.clearSelection()
            otherIndex = otherList.selectedIndex
        } else {
            mainListSelected = true
            clearJList(otherList)
        }
    }

我有两个JList,并且这个函数控制哪个列表允许通过mainListSelected变量选择。然后我们还必须根据它是否是来自mainList或otherList的索引来改变我们想要使用的int eindex

我已经阅读了有关event.isAdjusting的内容,它只会在鼠标点击事件中触发两次这样的事件。有了这些知识,你会认为我只会将所有东西都移出那里,但如果鼠标是导致事件的原因而不是使用箭头,我需要以不同的方式发生。但是,使用此代码,使用箭头键导航可防止索引不断更改。

0 个答案:

没有答案