Estoy tratando de usar un componente Swing compuesto como parte de un menú.JComboBox en un JPopupMenu
Todo funciona bien, aparte de un detalle: El componente contiene JComboBox
es y cada vez que el usuario hace clic en uno de ellos para abrir su menú desplegable, se abre el menú desplegable pero el menú desaparece. ¿Es posible hacer que el menú permanezca abierto cuando se hace clic en JComboBox
?
Subclasificado JMenu
. Este es el código correspondiente:
public class FilterMenu extends JMenu {
public FilterMenu(String name) {
super(name);
final JPopupMenu pm = this.getPopupMenu();
final FilterPanel filterPanel = new FilterPanel(pm) {
@Override
public void updateTree() {
super.updateTree();
pm.pack();
}
};
pm.add(filterPanel);
}
}
FilterPanel
es el componente compuesto personalizado. Se llama al pm.pack()
para adaptar el tamaño de JPopupMenu
cuando el tamaño filterPanel
cambia.
Gracias por su ayuda
¿No sería más apropiado un submenú que un JComboBox? –
@Max estuvo de acuerdo con @Jesse Barnum subMenuItem +1 – mKorbel