2. Jframe öffnen und 1. Jframe muss sich dann schließen ?

Status
Nicht offen für weitere Antworten.
P

Pit

Gast
MainWindow.class

Code:
import java.awt.Color;
import java.awt.Font;
import java.awt.Insets;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;

import org.jvnet.substance.button.ClassicButtonShaper;
import org.jvnet.substance.SubstanceLookAndFeel;
import org.jvnet.substance.theme.SubstanceAquaTheme;
import org.jvnet.substance.painter.WaveGradientPainter;
import org.acegisecurity.ldap.search.*;

/** @author  **/

public class MainWindow extends JFrame implements ActionListener

{    static final long serialVersionUID = 1L;   

//setIconImage(new ImageIcon("images/Dir.gif").getImage());
//static final long serialVersionUID = 1L;

	JLabel header1LB      = new JLabel("<html>[b]EDV-Lehrer Login[/b]</html>");      
	JLabel benutzernameLB = new JLabel("<html>[b]Benutzername[/b]</html>");
	JLabel kennwortLB		= new JLabel("<html>[b]Kennwort[/b]</html>");
	JLabel userlisteLB    = new JLabel("<html>[b]Schülertestliste:[/b]</html>"); 
	JLabel logstatusLB    = new JLabel("<html>[b]In Active Directory eingeloggt:[/b]</html>");
	JPasswordField kennwortTF = new JPasswordField(10);
	JTextField benutzernameTF = new JTextField ();
	JTextField logstatusTF = new JTextField();       
	JComboBox userCB  = new JComboBox();      
	JButton loginBT = new JButton("<html>Login
</html>");     
	Font schriftArtTextArea = new Font("Courier New",Font.PLAIN,12);
	JSeparator vlinie = new JSeparator();
	


   public MainWindow()
   {
      super("Active Directory Tool");
      UIManager.put("swing.boldMetal", Boolean.FALSE);     
      
          setLayout(null);                          
          add(vlinie);
          add(header1LB); 
          add(kennwortLB);     
          add(kennwortTF);   
          add(benutzernameLB);
          add(benutzernameTF);
          add(userlisteLB);
          add(logstatusLB);
          add(logstatusTF);          
          add(userCB);                  
          add(kennwortTF);
          add(loginBT);             
          
         header1LB.setBounds(20,50,300,30);    
         benutzernameLB.setBounds(20,100,150,30);
         benutzernameTF.setBounds(145,100,235,20);
         kennwortLB.setBounds(20,130,150,30);
         kennwortTF.setBounds(145,130,235,20);      
         userCB.setBounds(145,210,235,25);
         userlisteLB.setBounds(20,210,300,25);
         logstatusLB.setBounds(20,250,300,25);
         logstatusTF.setBounds(200,250,180,25);
         loginBT.setBounds(290,160,90,40);             
         vlinie.setBounds(20,75,360,2);                 
         kennwortTF.setMargin(new Insets(1, 3, 1, 1));
         benutzernameTF.setMargin(new Insets(1,3,1,1));         
         //installationScrollLeisten.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
         //buttonNfoCreate.setIcon(new ImageIcon("images/packen.gif"));
        
         benutzernameLB.setForeground(new Color(40,120,40));
         kennwortLB.setForeground(new Color(40,120,40));
         //kennwortwdhLB.setForeground(new Color(40,120,40));
         loginBT.setForeground(new Color(0,0,170));     
         header1LB.setForeground(new Color(40,120,40));         
         userCB.setForeground(new Color(40,120,40)); 
         userlisteLB.setForeground(new Color(40,120,40)); 
         logstatusLB.setForeground(new Color(40,120,40));
         logstatusTF.setForeground(new Color(255,200,140));        
         
         userCB.setFont(new Font("Arial",Font.BOLD, 13));        
         loginBT.setFont(new Font("Arial",Font.BOLD, 12));                        
        
         //rlsSourceDirectoryCB.setEditable(true);
         
         userCB.addItem("testschüler1");  
         userCB.addItem("testschüler2");
         
         logstatusTF.setEditable(false);
         logstatusTF.setBackground(new Color(220,220,220));
                  
         vlinie.setOrientation(0);
         loginBT.addActionListener(this);               
         //((BasicComboBoxRenderer) rendererfilesizeCB).setHorizontalAlignment(SwingConstants.CENTER);
        
   }  //...................................... KONSTRUKTOR ENDE ........................................ //
    
      
      
     
      //--------------------------------------------- ActionListener für Buttons --------------------------------------------------//
      public void actionPerformed(ActionEvent e)
      {    	

    	  if (e.getSource().equals(loginBT))
    	    {  	   		  
	    		MainWindowBig anwendungJF = new MainWindowBig();    	   
	    		anwendungJF.setSize(410,350);
	     	    anwendungJF.setVisible(true);
	     	    anwendungJF.setLocationRelativeTo(null);
	     	    anwendungJF.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
	     	    anwendungJF.setResizable(false);
	     	    Fenster.dispose();
	     	    
    	    } 
      }
   

   public static void main(String args[])
   {
      SubstanceLookAndFeel slnf = new SubstanceLookAndFeel();
      SubstanceLookAndFeel.setCurrentTheme(new SubstanceAquaTheme());
      SubstanceLookAndFeel.setCurrentButtonShaper(new ClassicButtonShaper());
      SubstanceLookAndFeel.setCurrentGradientPainter(new WaveGradientPainter());  
      try
      {
        UIManager.setLookAndFeel(slnf);
        JFrame.setDefaultLookAndFeelDecorated(true);
      }
      catch (Exception e)
      {
        e.printStackTrace();
      }
      MainWindow Fenster = new MainWindow ();
      
      Fenster.setSize(410,350);
      Fenster.setLocationRelativeTo(null);
      Fenster.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
      Fenster.setResizable(false);
      Fenster.setVisible(true);


    // Hier muss der Code hin um das Fenster zu schließen Fenster.dispose(); geht aber nicht?

   }
}


MainWindowBig.class

Code:
import javax.swing.*;


public class MainWindowBig extends JFrame

{	
	
	
	public MainWindowBig ()
	
	{		
		
		
	}
	

}

Hallo, schaut einfach 20 Zeilen hoch, da versuche ich das Fenster mit Namen "Fenster" zu löschen mit Fenster.dispose(); aber die instanz "Fenster" scheint nicht bekannt zu sein?
 
P

Pit

Gast
vor allem wenn ich das 1. login fenster schließe von hand wenn es angezeigt wird, nach dem das 2. JFrame geladen wurde, dann werden einfach beide Fenster geschloßen, was aber klar ist, da das 1. login Fenster ja in der main methode ist... Wie bekomme ich es nur hin, dass das 1. Login Fenster (was ja als 1. angezeigt wird) nicht in der Main methode steht, denn wenn ich das Fenster schließe beendet sich ja alles ?!
 

The_S

Top Contributor
Die Variable "Fenster" existiert auch nur in der main-Methode. Lass das Fenster. einfach weg und schreibe nur dispose(). Alternativ kannst du auch this.dispose() schreiben. Auch du solltest dir nochmal ein bisschen OOP und das Schlüsselwort static anschauen ;) .
 
G

Guest

Gast
Die Variable "Fenster" existiert auch nur in der main-Methode. Lass das Fenster. einfach weg und schreibe nur dispose(). Alternativ kannst du auch this.dispose() schreiben.

Gemacht und es geht jetzt. Dennoch muss ich jetzt fragen, woher weiß das Programm, dass wenn ich nur dispose(); schreibe, dass die instanz Fenster gelöscht werden soll und nicht die instanz "anwendungJF" ?


Auch du solltest dir nochmal ein bisschen OOP und das Schlüsselwort static anschauen ;)

Warum genau static, was stimmte da in meinem code nicht?

Vielen Dank für deine schnelle Hilfe!
 

The_S

Top Contributor
Du befindst dich ja IN deiner Fenster-Klasse, wenn du dieses schließen möchtest. Von daher weiß er, dass er genau sich selbst schließen muss.

Deine Arbeit passt soweit, aber ich denke dir ist noch nicht ganz klar, was der unterschied zwischen static und "nicht-static" ist. Dazu kannst du entweder in die FAQ gucken, oder ich such mal eben, das hat gestern jemand in nem anderen Thread sehr schön an einem ähnlichen Beispiel erklärt :D

[edit] http://www.java-forum.org/de/viewtopic.php?t=50398&highlight=static
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
I JFrame / Screen auf zweitem (definiertem) Monitor öffnen Java Basics - Anfänger-Themen 3
P JFrame nur einmal öffnen Java Basics - Anfänger-Themen 4
K Aus JFrame-Fenster SuM-Fenster öffnen geht nicht! Java Basics - Anfänger-Themen 8
G JFrame nur ein mal öffnen, auch beim mehrmaligem Betätigen Java Basics - Anfänger-Themen 11
J neuen jFrame öffnen per buttonklick Java Basics - Anfänger-Themen 3
E JFrame durch Button in anderem JFrame öffnen Java Basics - Anfänger-Themen 2
J JApplet ein JFrame öffnen Java Basics - Anfänger-Themen 6
F JFrame bei Start von Application öffnen Java Basics - Anfänger-Themen 15
fragenÜber(fragen); Turtle Grafik mit GUI (JFrame) Java Basics - Anfänger-Themen 3
E JFrame + Buffer-strategy Java Basics - Anfänger-Themen 8
luggas89 Mit Jframe live zeichnen Java Basics - Anfänger-Themen 4
C mehrere JPanel in ein JFrame bringen Java Basics - Anfänger-Themen 9
B HSQL mit JFrame steuern Java Basics - Anfänger-Themen 4
D Wie Objekte im JFrame frei bewegen lassen? Java Basics - Anfänger-Themen 3
D Erste Schritte png in JFrame anzeigen? Java Basics - Anfänger-Themen 3
Thomathy Interface Wie schließt man ein anderes JFrame Fenster? Java Basics - Anfänger-Themen 6
D Probleme mit JFrame und der Größe Java Basics - Anfänger-Themen 8
P JFrame, Linien zeichnen, MouseListener Java Basics - Anfänger-Themen 2
S Kontrollieren ob jframe disposed ist Java Basics - Anfänger-Themen 3
Elyt JFrame in den Hintergrund verschieben Java Basics - Anfänger-Themen 3
OSchriever JFrame-Anwendungsfenster verschieben Java Basics - Anfänger-Themen 17
M Bild in JFrame Java Basics - Anfänger-Themen 1
S Klassenaufruf über JFrame Button Java Basics - Anfänger-Themen 3
W 2 JPanel in einem JFrame Java Basics - Anfänger-Themen 4
CptK Interface Klasse Frame (extends JFrame) aus anderer Klasse schließen Java Basics - Anfänger-Themen 7
S JFrame mit Hintergrundbild und Button Java Basics - Anfänger-Themen 4
S JFrame Java Basics - Anfänger-Themen 15
I JFrame proportional verkleinerbar machen Java Basics - Anfänger-Themen 3
B Java JFrame zeichnen Java Basics - Anfänger-Themen 4
ReinerCoder Vererbung von JFrame in einer Klasse entfernen Java Basics - Anfänger-Themen 5
T Auslagern von Methoden bei einem JFrame Java Basics - Anfänger-Themen 6
N Erste Schritte JFrame Caesar-Verschlüsselung Java Basics - Anfänger-Themen 23
B Erste Schritte Objekte von JFrame der Fenstergröße anpassen Java Basics - Anfänger-Themen 3
J JFrame Fenster öffnet sich nicht Java Basics - Anfänger-Themen 7
3 JFrame immer im Hintergrund Java Basics - Anfänger-Themen 1
F Interface JFrame mit if-Abfrage automatisch schließen lassen? Java Basics - Anfänger-Themen 3
R JFrame nicht verschiebbar Java Basics - Anfänger-Themen 2
T Wenn JFrame Textfelder Hintergrund Grün dann... (if) Java Basics - Anfänger-Themen 3
K Java JFrame mit Hintergrundbild erstellen Java Basics - Anfänger-Themen 1
Aruetiise Variablen JFrame und Variablen Java Basics - Anfänger-Themen 3
H Eclipse JFrame Java Basics - Anfänger-Themen 3
C Variablen von einem JFrame in einen anderen übertragen Java Basics - Anfänger-Themen 3
M Bild wird von JFrame nicht geladen Java Basics - Anfänger-Themen 12
I JFrame minimieren wenn anderes Programm minimiert wird Java Basics - Anfänger-Themen 1
K Methoden Methode starten wenn JFrame geöffnet wird Java Basics - Anfänger-Themen 2
D Erste Schritte JFrame Inhalte werden nicht angezeigt Java Basics - Anfänger-Themen 8
A Variablen In anderer Klasse auf Objekte von JFrame zugreifen Java Basics - Anfänger-Themen 1
B Ist MyFrame oder JFrame besser? Java Basics - Anfänger-Themen 3
Y JFrame sichtbarkeit Java Basics - Anfänger-Themen 4
KeVoZ_ Label auf JFrame willkürlich Positionieren Java Basics - Anfänger-Themen 2
Dechasa Interface JFrame mit mehreren Übereinander liegenden JPanel Java Basics - Anfänger-Themen 5
D JFrame - 10 Sekunden bis zum schließen warten. Java Basics - Anfänger-Themen 2
V Tastatur initialisieren JFrame Probleme Java Basics - Anfänger-Themen 6
J JPG in JFrame anzeigen lassen Java Basics - Anfänger-Themen 3
J JFrame ausgabe von Werten Java Basics - Anfänger-Themen 9
F GUI als Klasse oder extend JFrame? Java Basics - Anfänger-Themen 6
F JFrame resize verschiebt JPanel Java Basics - Anfänger-Themen 3
S Wieso wird mein JFrame transparent dargestellt? Java Basics - Anfänger-Themen 5
L [JFrame] Exception - woher? Java Basics - Anfänger-Themen 8
thomasbomme Grafikfehler JFrame- Cleartype Java Basics - Anfänger-Themen 1
GreyFox Arbeit mit JFrame Java Basics - Anfänger-Themen 8
T Erste Schritte 2 Codes zusammen fügen / Label in JFrame Java Basics - Anfänger-Themen 1
Z Zwei Images auf einem JFrame - Aber nur eins wird angezeigt! Java Basics - Anfänger-Themen 5
N Input/Output Wenn kein Input, dann Fehler anzeigen lassen im JFrame Java Basics - Anfänger-Themen 6
W 2 JPanels in 2Klasse in einem JFrame zusammenfügen Java Basics - Anfänger-Themen 12
dat_vin JFrame öffnet sich mehrmals Java Basics - Anfänger-Themen 6
M JFrame Bild einfügen Java Basics - Anfänger-Themen 3
M Rahmen für undekorierten JFrame Java Basics - Anfänger-Themen 6
S JPanel wird versetzt auf JFrame gelegt Java Basics - Anfänger-Themen 2
B Erste Schritte JFrame in Klasse auslagern Java Basics - Anfänger-Themen 4
H JFrame komplett schließen Java Basics - Anfänger-Themen 3
S Brauche hilfe bei Pong (JFrame) Java Basics - Anfänger-Themen 2
M hintergrund in jframe festlegen Java Basics - Anfänger-Themen 4
J JFrame Render Fehler - Warum? Java Basics - Anfänger-Themen 2
I komponenten werden in JFrame nicht richtig angezeigt Java Basics - Anfänger-Themen 1
E 2. JFrame erkennt 1. Frame Java Basics - Anfänger-Themen 6
D Best Practice JFrame im JFrame Java Basics - Anfänger-Themen 2
P Bild in JFrame Titelleiste Java Basics - Anfänger-Themen 7
S Erste Schritte Von JFrame in nächstes JFRame wechseln Java Basics - Anfänger-Themen 0
V JFrame aktualisieren Java Basics - Anfänger-Themen 6
S JFrame ist nicht schwarz Java Basics - Anfänger-Themen 5
B JPanel/JFrame in ein Applet umwandeln (Webfähig) Java Basics - Anfänger-Themen 7
S Interface JButton etc. wird in JFrame mit paint() nicht angezeigt Java Basics - Anfänger-Themen 6
S JFrame wird nicht "bemalt" Java Basics - Anfänger-Themen 2
M Unsichtbare Objekte in JFrame Java Basics - Anfänger-Themen 2
S Textdatei einlesen und JFrame füllen Java Basics - Anfänger-Themen 14
Sogomn JLabel in anderer Klasse zum JFrame hinzufügen Java Basics - Anfänger-Themen 2
B Drawline wird auf JFrame nicht angezeigt Java Basics - Anfänger-Themen 3
N Fokus setzen nachdem JFrame in Vordergrund geholt wurde Java Basics - Anfänger-Themen 7
K Methoden Objekt auf JFrame zeichnen Java Basics - Anfänger-Themen 16
S JFrame leeren Java Basics - Anfänger-Themen 6
X JFrame Fenster einzeln schließen Java Basics - Anfänger-Themen 2
J Klick auf Button -> JFrame öffnet sich erneut. & Datei lässt sich nicht löschen Java Basics - Anfänger-Themen 7
K Erste Schritte Jframe Im Jpanel Java Basics - Anfänger-Themen 4
D Kein Zugriff auf JFrame Java Basics - Anfänger-Themen 2
P JFrame Component automatische Größe verhindern Java Basics - Anfänger-Themen 2
D JFrame, Komponenten verschmiert. Java Basics - Anfänger-Themen 15
M Schriftfarbe in JFrame Java Basics - Anfänger-Themen 24
A JFrame läuft ewig? Java Basics - Anfänger-Themen 2
U JFrame durch ActionListener erweitern Java Basics - Anfänger-Themen 4

Ähnliche Java Themen

Neue Themen


Oben