Ich bin gerade dabei, eine GUI in Netbeans 6.1 für mein Senior-Design-Projekt zu erstellen, aber ich habe einen nervigen Haken gefunden. Temporäre Windows wie mein Login PopUp und andere verschwinden nicht, wenn ich es erzähle. Ich habe erforscht, wie man das für ungefähr 2 Monate auf einem weg löst. Ich habe sogar einen separaten Thread für mein Pop Up gemacht, aber es wird immer noch nicht funktionieren .... die einzige Art und Weise, wie es verschwinden wird, wenn ich mich buchstäblich mit keiner der anderen GUI-Komponenten anlege .... mein Beispielcode sollte helfen, meine zu beschreiben Wut ... achtet nicht auf den Schattencode, es war zu Testzwecken, was offensichtlich nicht geholfen hat.Warum wird mein JFrame nicht versteckt?
Ich habe auch Swing Utilities versucht, aber vielleicht habe ich es falsch implementiert, da es das erste Mal ist, dass ich sie benutze. Es tut im Wesentlichen dasselbe wie der Code oben, mit Ausnahme der Fenster frieren ein, wenn es warten wird, die die oben genannte Code tut tun:
javax.swing.SwingUtilities.invokeLater(new Runnable() {
public synchronized void run() {
try
{
loginPopUpFrame.pack();
loginPopUpFrame.setVisible(true);
System.out.println("waitin");
wait();
System.out.println("Not Sleepin.");
loginPopUpFrame.pack();
loginPopUpFrame.setVisible(false);
}
catch (InterruptedException e)
{
}
}
});
BITTE HELFEN SIE MICH !!!
Ich denke ihr habt recht ... Alles was ich will ist das Fenster um zu erscheinen, ein Benutzer wählt seinen Namen aus einer Liste aus, tippt sein Passwort und sobald das Passwort bestätigt ist, wollte ich das Fenster einfach verschwinden lassen. Ich ändere jetzt den Rahmen in einen Dialog, um mein Glück zu testen – durrellp
Wenn es nicht threadsicheres Dokument ist, ist es nicht. Tatsächlich entfernt JDK7 einige Dokumentationen, dass Methoden Thread-sicher sind, weil sie nicht waren (und konnten). –