Java如何确定是否显示JComboBox菜单?
本示例说明如何创建一个实现,PopupMenuListener以侦听JComboBox菜单可见,不可见或取消时的菜单。
package org.nhooo.example.swing;
import javax.swing.*;
import javax.swing.event.PopupMenuListener;
import javax.swing.event.PopupMenuEvent;
import java.awt.*;
public class ComboBoxPopupMenuListener extends JFrame {
public ComboBoxPopupMenuListener() {
initialize();
}
private void initialize() {
setSize(300, 300);
setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
setLayout(new FlowLayout(FlowLayout.LEFT));
Integer[] years = new Integer[] {2005, 2006, 2007, 2008, 2009, 2010};
JComboBox<Integer> comboBox = new JComboBox<>(years);
comboBox.setEditable(true);
//添加一个PopupMenu侦听器,它将监听通知
//来自组合框弹出部分的消息。
comboBox.addPopupMenuListener(new PopupMenuListener() {
public void popupMenuWillBecomeVisible(PopupMenuEvent e) {
//在弹出菜单变为可见之前调用此方法。
System.out.println("PopupMenuWillBecomeVisible");
}
public void popupMenuWillBecomeInvisible(PopupMenuEvent e) {
//在弹出菜单不可见之前调用此方法
System.out.println("PopupMenuWillBecomeInvisible");
}
public void popupMenuCanceled(PopupMenuEvent e) {
//取消弹出菜单时调用此方法
System.out.println("PopupMenuCanceled");
}
});
getContentPane().add(comboBox);
}
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
new ComboBoxPopupMenuListener().setVisible(true);
}
});
}
}
热门推荐
10 毛笔哥哥结婚祝福语简短
11 向国庆送祝福语简短
12 建队节祝福语简短
13 朋友喜得外孙简短祝福语
14 小店营业的祝福语简短
15 餐饮生日祝福语简短独特
16 鲜花英语祝福语卡片简短
17 男朋友暴富祝福语简短
18 婶婶拜年祝福语大全简短