Getting the JFrame of a Component
import java.awt.Component; import java.awt.event.ActionEvent; import javax.swing.AbstractAction; import javax.swing.Action; import javax.swing.SwingUtilities; public class Main { public static void main(String[] argv) throws Exception { // Create an action Action action = new AbstractAction("Action Label") { // This method is called when the action is triggered public void actionPerformed(ActionEvent evt) { Component c = (Component) evt.getSource(); // Get the frame Component frame = SwingUtilities.getRoot(c); // Hide the frame frame.setVisible(false); } }; } }