¿Cómo puedo obtener el JFrame en el que vive JPanel?Java/Swing: Obtenga Window/JFrame desde dentro de un JPanel
Mi solución actual es preguntar el panel por su padre (y así sucesivamente) hasta que encuentre una ventana:
Container parent = this; // this is a JPanel
do {
parent = parent.getParent();
} while (!(parent instanceof Window) && parent != null);
if (parent != null) {
// found a parent Window
}
¿Hay una manera más elegante, un método en la librería estándar puede ser?
Esto fue realmente útil al usar los controladores Spring para conectar los eventos a Swing. –
Fresco, fácil y funciona bien. –