[英]Exception Removing all Combo Box Items with JComboBox Open
我需要删除我的JComboBox上的所有元素,使用.removeAllItems()它工作正常! 但我注意到有一个小问题,也许是一个错误? 我不知道。
如果我打开JComboBox,然后尝试删除所有项目,则会抛出异常:
Exception in thread "AWT-EventQueue-0" java.lang.ArrayIndexOutOfBoundsException: 0 >= 0
我试着在调用removeAllItems之前关闭弹出窗口,如下所示:
private void removeAllClassesAvailable() {
classeComboBox.hidePopup();
classeComboBox.removeAllItems();
}
但仍然没有成功!
也许是因为我的JComboBox在JTable中?
看起来像添加到组合框中的一个侦听器试图处理选择。 尝试在删除项目之前从组合中删除侦听器,然后读取。
尝试放置一个全局变量boolean,以避免控件继续触发新事件:
public static boolean avoidNewEvents;
.............
private void
jCBoxSubCategoriaActionPerformed(java.awt.event.ActionEvent evt) {
// ComboBox
//
if (Form.avoidNewEvents==false) return;
.............
//Avoid new events to fire recursively
FORM.avoidNewEvents=false;
/
jCBoxSubCategoria.removeAllItems();
//Reset:
FORM.avoidNewEvents=true;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.