[JAVA] zweites Fenster öffnen
lima-city → Forum → Programmiersprachen → Java
aufruf
beitrag
dialog
ebenfall
eingabe
eingegebene passwort
falsch rufe
fenster
fram
gruss
import
klasse
methode
normale fenster
passende import
pawort
richtig mache
ungefhr
vorderster stelle
zeile
-
Hallo,
wie kann ich ein zweites Fenster mit Java öffnen?
ich meine das so:
Wenn ich das Programm öffne, legt sich über das 'normale Fenster' ein Pannel,
in dem nach einem Passwort gefragt wird,
wenn dies richtig eingegeben wird, dann soll das Pannel verschwinden.
Nun ist es so, dass wenn ich einfach ein BevelPannel einfüge, die Textfelder darunter noch zu sehen sind.
Am besten wäre es auch,
wenn das Fenster darunter solange deaktiviert wird. -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Moin,
ich bin's wieder mal *grins*
Also wenn Du nur das Passwort abfragen willst,
dann eignet sich dafür ein JOptionPane-Dialog.
Dieser sperrt automatisch das Fenster, über das er aufgerufen wird.
Die Klasse dafür findest Du unter javax.swing.JOptionPane
Das Ganze könnte dann ungefähr so aussehen:
* public void checkPasswort() { String passwort = "lima-city"; String eingabe = JOptionPane.showInputDialog(this,"Geben Sie das Passwort ein:","Passwort-Abfrage",JOptionPane.QUESTION_MESSAGE); // das muss natürlich in einer Zeile sein if(eingabe.trim().equals(passwort)){ // wenn richtig, mache irgendwas } else{ checkPasswort(); //wenn falsch, rufe dieselbe Abfrage nochmal auf } } *
Das Dialogfeld verschwindet nach dem Klicken auf einen Button automatisch.
Gruss,
Puni
Beitrag geändert: 11.11.2006 20:18:15 von puni -
wenn du checkPasswort() aufrufst, wird das JOPtionPane Fenster geöffnet, das Passwort abgefrage, im Fehlerfall eine Meldung ausgegeben( würde ich ein JOptionPane.shoeMessageDialog() nehmen) und, wenn es Passwort richtig ist, eben dein eingefügter Code.
-
Moin,
ich weiss ja nicht was genau passieren soll,
wenn das Passwort richtig eingegeben wurde.
Soll etwas gestartet, überprüft oder beendet werden?
Und das checkPasswort() kannst Du dann ersetzen,
mit dem Code, der ausgeführt werden soll, wenn das eingegebene Passwort falsch ist.
Gruss,
Puni -
Also, ich meine das so:
das Programm wird gestartet,
dann wird es deaktiviert.
Es öffnet sich automatisch ein fenster/eingabefeld für ein Passwort.
ist die Korrekt eingegeben, verschwindet das Fenster/Feld und das Programm wird aktiviert. -
speedtouch92 schrieb:
Also, ich meine das so:
das Programm wird gestartet,
dann wird es deaktiviert.
Es öffnet sich automatisch ein fenster/eingabefeld für ein Passwort.
ist die Korrekt eingegeben, verschwindet das Fenster/Feld und das Programm wird aktiviert.
Joa, also.
Das JOptionPane von Puni gibt dir das alles.
es deaktiviert das andere Fenster, und verschwindet nach Eingabe.
Den Rest musst du eben selbst machen.
Könntest z.B nach dem richtigen Passwort prüfen, und dann das JOptionPane wieder aufrufen, etc. ... -
Also, ich meine das so:
das Programm wird gestartet,
dann wird es deaktiviert.
Es öffnet sich automatisch ein fenster/eingabefeld für ein Passwort.
ist die Korrekt eingegeben, verschwindet das Fenster/Feld und das Programm wird aktiviert.
Moin,
das ist eigentlich leichter als Du denkst.
Du hast ja meine Methode checkPasswort() nun vorliegen.
Diese musst Du einfach mit in den Startprozess Deines Frames einbauen.
Das heisst, Du musst irgendwo an vorderster Stelle,
wo Dein Frame in der GUI-Klasse initialisiert wird,
diese Methode mit aufrufen, sodass gleich nach dem Programmstart das Passwort abgefragt wird.
Gruss,
Puni -
Bei mit kommt 2 mal der Fehler, die Variable JOptionPane
sei nicht definiert.
in dieser Zeile:
String eingabe = JOptionPane.showInputDialog(this,'Geben Sie das Passwort ein:','Passwort-Abfrage',JOptionPane.QUESTION_MESSAGE); -
Servus ,
dann fehlt dir vermutlich noch der passende Import ...
import javax.swing.JOptionPane;
Sollte das Problem beheben ...
-
Es gibt auch ein JPasswordField.
Da ist sogar das Passwort als Sterne
du kannst den Frame darunter unsichtbar machen indem du sagst
framename.setVisible(false);
den neuen Frame kannst du einfach erzeugen mit
JFrame neuerframe = new JFrame();
neuerframe.setVisible(true); -
ich glaub das Passwortfeld ist in javax.swing
-
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage