MEMon
06-11-2010, 15:14
Sto facendo un componente con l'autocompletamento, e sto utilizzando come base una jcombobox.
Chiamo showPopup quando trovo un matching tra la parola che si sta digitando e i suggerimenti indicati.
Il problema è che potrebbe venir chiamato anche in condizioni strane(ad esempio subito dopo che il componente viene stanziato ma che ancora non è visibile) quindi mi lancia una eccezzione:
Exception in thread "AWT-EventQueue-0" java.awt.IllegalComponentStateException: component must be showing on the screen to determine its location
La conosco bene, ho sempre risolto con un
if(comboBox.isDisplayable()){
comboBox.showPopup();
}
Ma non capisco come mai questa volta non funziona...
Sapete se c'è altro che devo controllare prima di poter chiamare showPopup su una comboBox?
Chiamo showPopup quando trovo un matching tra la parola che si sta digitando e i suggerimenti indicati.
Il problema è che potrebbe venir chiamato anche in condizioni strane(ad esempio subito dopo che il componente viene stanziato ma che ancora non è visibile) quindi mi lancia una eccezzione:
Exception in thread "AWT-EventQueue-0" java.awt.IllegalComponentStateException: component must be showing on the screen to determine its location
La conosco bene, ho sempre risolto con un
if(comboBox.isDisplayable()){
comboBox.showPopup();
}
Ma non capisco come mai questa volta non funziona...
Sapete se c'è altro che devo controllare prima di poter chiamare showPopup su una comboBox?