Ich habe eine JCombobox, in der, wenn ich eine aus der Dropdown-Liste von JCombobox auswähle, das ausgewählte Element geöffnet wird, aber wenn ich auf "Benutzerdefiniert" unter einer der Dropdown-Liste klicke, muss ich eine Daiolg öffnen, daiolg ist Öffnen, aber Dropdown-Liste schließt nicht Ich möchte das Dropdown-Menü ausblenden, wenn ich auf Benutzerdefiniert klicke. hier ist mein Beispielcode ....Wie schließe ich die Drop-Down-Liste von JCombobox, wenn wir auf Custom klicken?
private PropertyChangeSupport pcs;///here Iam using ActionListener and PopupMenuListener
public void actionPerformed(ActionEvent ae){
if(ae.getSource() instanceof ComboBox)
{
ComboBox comboBox = (ComboBox)ae.getSource();
Object selectedItem = comboBox.getSelectedItem();
if(selectedItem != null && (!selectedItem.equals("(Custom..)")))
{
pcs.firePropertyChange("ITEM_SELECTED",getCaption(),null);
}}}
public void popupMenuWillBecomeInvisible(PopupMenuEvent e)
{
ComboBox comboBox = (ComboBox)e.getSource();
Object repeatedSelectedItem = comboBox.getSelectedItem();
if(repeatedSelectedItem != null && repeatedSelectedItem.equals("(Custom..)"))
{
invokeCustomFilterDialog(repeatedSelectedItem, comboBox);
}}
private void invokeCustomFilterDialog(Object repeatedSelectedItem, ComboBox comboBox)
{
customFilterDialog.showDialog(); //here Iam opening dailog...
if(customFilterDialog.isCustomFilterAppliedFlag() == true)
{
pcs.firePropertyChange("ITEM_SELECTED",getCaption(),null);
}
else
{comboBox.setSelectedItem(lastSelectedItem);}}
public void popupMenuCanceled(PopupMenuEvent e)
{ }
public void popupMenuWillBecomeVisible(PopupMenuEvent e)
{
ComboBox comboBox = (ComboBox)e.getSource();
this.lastSelectedItem = comboBox.getSelectedItem();
}
Um Hilfe erhalten Sie benötigen ein kurzes runnable Beispiel liefern ([SSCCE] (http://sscce.org)). Ich kann den Code, den du gepostet hast, nicht einmal kompilieren. –