Fenster reaktiviren

tcppunk

Erfahrenes Mitglied
Mein Problem:
Ich habe ein Programm (normales awt) geschrieben, das die primäre Aufgabe hat
andere Programme (z.B. den Editor oder Calculator) aufzurufen. Jetzt ist es aber nunmal
so, das wenn ein anderes Programm gestartet wird, es sich in den Vordergrund schiebt.
Meine Frage:
Wie kann ich meinen Frame wieder aktivieren?
 
Hallo!

Versuchs mal damit:
Code:
/**
 * 
 */
package de.tutorials;

import java.awt.Frame;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;

/**
 * @author Tom
 */
public class FrameTest {

	/**
	 * @param args
	 */
	public static void main(String[] args) throws Exception {
		final Frame frm = new Frame("MyFrame");
		frm.setSize(320, 240);
		frm.addWindowListener(new WindowAdapter() {
			public void windowClosing(WindowEvent evt) {
				frm.setVisible(false);
				frm.dispose();
				System.exit(0);
			}
		});

		frm.setVisible(true);
		// Mit dem Frame interagieren...
		// ..

		// Nach 2 Sekunden sind wir damit fertig, wir rufen das andere Programm
		// auf und es schiebt sich in den
		// Vordergrund
		Thread.sleep(2000L);

		// Man kann den Frame nicht mehr sehen...
		frm.setVisible(false);

		// wir durchsuchen alle Frames nach unserem Frame und machen ihn wieder
		// sichtbar...
		Thread.sleep(2000L);
		Frame[] frames = Frame.getFrames();
		for (int i = 0; i < frames.length; i++) {
			Frame frame = frames[i];
			if (frame.getTitle().equals("MyFrame")) {
				frame.setVisible(true);
			}
		}

	}

}

Gruß Tom
 
Zurück