JComboBox控件,不使用setEnabled方法,如何能让其不弹出下拉窗口?谢谢。
解决方案 »
- 关于main函数的4种设想
- 紧急求助,一个Java的问题,程序中错误的地方就是被我注释掉的地方,希望各位高手帮忙一下
- think in java问题
- 大家帮我看看我对这个异常的理解对不?
- graphics.drawImage(bufferedImage缩小画图出现锯齿,而原图很清晰。
- 新手上路,问题简单,大家帮忙了!!!!!!
- Java能不能识别带"通配符"的SQL语句?
- JAVA是怎么一行一行地读文本文件,并把每一行区分开来的?谢谢!
- 请问对于想入门的人来说,什么书比较好???
- 新手请教-关于抽象类Graphics
- 请问:避免用一个对象访问一个类的静态变量或方法。应该用类名代替 的含义
- swing中英文切换问题
Object[] listeners = listenerList.getListenerList();
PopupMenuEvent e=null;
for (int i = listeners.length-2; i>=0; i-=2) {
if (listeners[i]==PopupMenuListener.class) {
if (e == null)
e = new PopupMenuEvent(this);
((PopupMenuListener)listeners[i+1]).popupMenuWillBecomeVisible(e);
}
}
}重写上面的方法
什么马甲,真没看懂,这个问题我也想了解下,我把里面那个for循环屏掉,也没什么变化呀,一样能弹出啊,
请问高手如何重写??
import javax.swing.JFrame;
import javax.swing.event.PopupMenuListener;public class JComboTest extends JFrame {
public JComboTest() {
JComboBox box = new JComboBox(new String[] { "Test" });
PopupMenuListener[] ls = box.getPopupMenuListeners();
for (int i = 0; i < ls.length; i++) {
box.removePopupMenuListener(ls[i]);
}
getContentPane().add(box);
} public static void main(String[] args) {
JComboTest frame = new JComboTest();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
}
如上面实现,删除JComboBox默认添加的PopupMenuListener即可,当然在删除之前,需要将Listener[]保存,以便以后添加