Java开发小结:用得比较顺手的事件监听
Posted LemonVerbena
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java开发小结:用得比较顺手的事件监听相关的知识,希望对你有一定的参考价值。
第一次听说监听是三年前,做一个webGIS的项目,当时对Listener的印象就是个“监视器”,监视着界面的一举一动,一有动静就触发对应的响应。
通过对界面的某一或某些操作添加监听,可以自发地调用监听函数/监听类,对操作作出反应。举个栗子:被监听的操作是“你惹你妈生气了”,添加的响应是“你妈给你爸打电话,你爸回家了,你爸打你一顿 ”。所以不管什么时候,只要“你惹你妈生气了”,都会触发这个操作的监听,最终结果是每次你都会被你爸打一顿。屡试不爽,无一例外。这就是事件监听,java.util.EventListener。
Listener分很多种,但我总结不出来一个宏观框架,这里只把常用的CS监听列出来讲讲,不足留待以后补充:ActionListener,MouseListener,PopMenuListener等等。
1. 直接在控件中添加监听,如给“保存按钮”添加ActionListener监听
1 saveCharaEditButton.addActionListener(new ActionListener() { 2 3 @Override 4 public void actionPerformed(ActionEvent e) { 5 // TODO Auto-generated method stub 6 save(); 7 } 8 });
2.写一个监听类,继承监听接口。添加事件监听时只需要 实现这个监听类就ok了
1 public JPanel setRightPanel(){ 2 JPanel rightPanel = new JPanel(); 3 double[][] size = {{15,TableLayout.FILL,30,TableLayout.FILL,35},{10,30,10,TableLayout.FILL}}; 4 rightPanel.setLayout(new TableLayout(size)); 5 JButton saveCharaEditButton = new JButton("保存编辑"); 6 JButton enableCharaEditButton = new JButton("启用编辑"); 7 rightPanel.add(enableCharaEditButton, "1,1"); 8 rightPanel.add(saveCharaEditButton, "3,1"); 9 rightPanel.add(setCharaJCTablePanel(), "0,3,4,3"); 10 saveCharaEditButton.addActionListener(new saveEditToFloodCharacterValueListener());//添加监听 11 return rightPanel; 12 }
1 class saveEditToFloodCharacterValueListener implements ActionListener{ 2 3 @Override 4 public void actionPerformed(ActionEvent e) { 5 // TODO Auto-generated method stub 6 FloodCharacterValue floodCharacterValue = new FloodCharacterValue(); 7 floodCharacterValue = FloodCharacterValue.transFldPropToFloodCharacterValue(editCharaFldprop); 8 m_doc.m_floodExtractCharacterValue = floodCharacterValue; 9 } 10 }
以上是关于Java开发小结:用得比较顺手的事件监听的主要内容,如果未能解决你的问题,请参考以下文章