Determining the Opposite Component of a Focus Event
import java.awt.Component; import java.awt.event.FocusAdapter; import java.awt.event.FocusEvent; import javax.swing.JButton; import javax.swing.JFrame; public class Main { public static void main(String[] argv) throws Exception { JButton component = new JButton("a"); component.addFocusListener(new MyFocusListener()); JFrame f = new JFrame(); f.add(component); f.pack(); f.setVisible(true); } } class MyFocusListener extends FocusAdapter { public void focusGained(FocusEvent evt) { Component c = evt.getOppositeComponent(); System.out.println(c.getName()); } public void focusLost(FocusEvent evt) { Component c = evt.getOppositeComponent(); System.out.println(c.getName() + "Opposite Component"); } }