我的程序能够更改组合框的所选项目。但是我如何知道项目更改是由人类鼠标点击项目本身还是由我的程序引起的。
我正在寻找一个可以添加到 JComboBox 的项目而不是 JComboBox 本身的 MouseListener。
最佳答案
JComboBox 是一个复合组件,强烈建议您避免使用低级监听器(例如 MouseListener)。相反,为什么不在代码选择一个项目时禁用选择监听器(也许您正在使用 ActionListener),然后在选择完成后重新启用它。因此,您将知道 ActionListener 的任何 Activity 都来自用户的选择。您可以通过删除并重新添加监听器或使用 boolean 变量来禁用和启用监听器,该 boolean 变量允许监听器仅在 boolean 值为 true 时使用react。
关于java - JComboBox 中项目上的鼠标事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13222378/