Fenster/Frame schließen

Status
Nicht offen für weitere Antworten.

ghost

Bekanntes Mitglied
Ich hab ein Hauptfenster aus dem ich ein 2. Fenster aus ( JFrame test = new test();) aufbaue. Nun habe ich in dem 2. Fenster einen Schließen - Button welcher, wenn er gedrückt wird, eben jenes 2. Fenster schließen soll, das Hauptfenster soll unberührt bleiben. Was muß ich da im ActionListener angeben ( bei test.dispose(); kommt die Fehlermeldung, das ich nichts non-static im static machen kann )?
Code:
ActionListener AL = new ActionListener(){
public void actionPeformed(ActionEvent e){
test.dispose(); <-- geht nicht
}
};
 

Sky

Top Contributor
Zeig mal'n bißchen mehr Code... liegt der gezeigte Bereich u.U. innerhalb der Main-Methode??
 

ghost

Bekanntes Mitglied
Code:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.net.*;
import java.sql.*;

public class Befehl extends JFrame{
	public Befehl(){
		super("Suche nach Datensätzen");
		
		JPanel pane = new JPanel();
		pane.setLayout(new GridBagLayout());
		
		JLabel labe = new JLabel();
		labe.setOpaque(true);
		labe.setFont(new Font("Helvetica", Font.BOLD, 20));
		labe.setText("Datensatz - Suche");
		pane.add(labe, new GridBagConstraints(0,0,1,1,1.0,0.1,
			GridBagConstraints.CENTER, GridBagConstraints.NONE, new Insets(0,0,0,0),1,1));
			
		JLabel labe2 = new JLabel();
		labe2.setOpaque(true);
		labe2.setFont(new Font("Helvetica", Font.BOLD,14));
		labe2.setText("zu durchsuchende Datenbank: ");
		pane.add(labe2, new GridBagConstraints(0,1,1,1,1.0,0.1,
			GridBagConstraints.CENTER, GridBagConstraints.NONE, new Insets(0,0,0,0), 1,1));
			
		JLabel labe3 = new JLabel();
		labe3.setOpaque(true);
		labe3.setFont(new Font("Helvetica", Font.BOLD,14));
		labe3.setText("Suchbegriff: ");
		pane.add(labe3, new GridBagConstraints(0,2,1,1,1.0,0.1,
			GridBagConstraints.CENTER, GridBagConstraints.NONE, new Insets(0,0,0,0), 1,1));
			
		JTextArea ausg = new JTextArea();
		ausg.setFont(new Font("Helvetica", Font.PLAIN, 14));
		ausg.setEditable(false);
		JScrollPane scro = new JScrollPane(ausg);
		pane.add(scro, new GridBagConstraints(3,1,6,3,1.0,0.1,
			GridBagConstraints.WEST, GridBagConstraints.BOTH, new Insets(0,0,0,0),1,1));
			
		JTextField tf1 = new JTextField();
		tf1.setFont(new Font("Helvetica", Font.PLAIN, 14));
		pane.add(tf1, new GridBagConstraints(1,1,1,1,1.0,0.1,
			GridBagConstraints.WEST, GridBagConstraints.HORIZONTAL, new Insets(0,0,0,0),1,1));
			
		JTextField tf2 = new JTextField();
		tf2.setFont(new Font("Helvetica", Font.PLAIN, 14));
		pane.add(tf2, new GridBagConstraints(1,2,1,1,1.0,0.1,
			GridBagConstraints.WEST, GridBagConstraints.HORIZONTAL, new Insets(0,0,0,0),1,1));
			
		JButton bu1 = new JButton();
		bu1.setText("Suchen");
		bu1.setBackground(Color.green);
		bu1.addActionListener(A1);
		pane.add(bu1, new GridBagConstraints(0,3,1,1,1.0,0.1,
			GridBagConstraints.CENTER, GridBagConstraints.NONE, new Insets(0,0,0,0),1,1));
			
		JButton bu2 = new JButton();
		bu2.setText("Schließen");
		bu2.setBackground(Color.red);
		bu2.addActionListener(A2);
		pane.add(bu2, new GridBagConstraints(1,3,1,1,1.0,0.1,
			GridBagConstraints.CENTER, GridBagConstraints.NONE, new Insets(0,0,0,0),1,1));
				
		this.getContentPane().setLayout(new GridBagLayout());
			this.getContentPane().add(pane, new GridBagConstraints(0,0,1,1,1.0,1.0, 
				GridBagConstraints.NORTH, GridBagConstraints.BOTH, new Insets(0,0,0,0),1,1));
	}
		ActionListener A1 = new ActionListener(){
			public void actionPerformed(ActionEvent e){
				
			}
		};
		ActionListener A2 = new ActionListener(){
			public void actionPerformed(ActionEvent e){
			
				
			}
		};
}
 

ghost

Bekanntes Mitglied
Der Code funzt ja, da ich hier das Befehl.dispose(); nicht drin hab, sondern nur den leeren ActionListener, da ich nicht weiß was ich machen soll, damit das Fenster geschlossen wird...
 

ghost

Bekanntes Mitglied
Klar, aber der rest des Prog funzt ja einwandfrei. Mein Problem ist nur, das ich mit dem oben geposteten Teil-Prog. ein Frame öffne und dieses mit einem Button/ActionListener wieder schließen möchte. Mein Problem ist nun, was muss ich im ActionListener angeben, damit das Fenster ( aber nur dieses, nicht das Hauptprog. ) geschlossen wird...
 

Icewind

Bekanntes Mitglied
der befehlt .dispose() gibt alle Resourcen wieder frei und lässt das frame verschwinden....
 

8ull23y3

Bekanntes Mitglied
Code:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.net.*;
import java.sql.*;

public class Befehl extends JFrame implements ActionListener {
   JButton bu1, bu2;
   public Befehl(){
      super("Suche nach Datensätzen");

      JPanel pane = new JPanel();
      pane.setLayout(new GridBagLayout());

      JLabel labe = new JLabel();
      labe.setOpaque(true);
      labe.setFont(new Font("Helvetica", Font.BOLD, 20));
      labe.setText("Datensatz - Suche");
      pane.add(labe, new GridBagConstraints(0,0,1,1,1.0,0.1,
         GridBagConstraints.CENTER, GridBagConstraints.NONE, new Insets(0,0,0,0),1,1));

      JLabel labe2 = new JLabel();
      labe2.setOpaque(true);
      labe2.setFont(new Font("Helvetica", Font.BOLD,14));
      labe2.setText("zu durchsuchende Datenbank: ");
      pane.add(labe2, new GridBagConstraints(0,1,1,1,1.0,0.1,
         GridBagConstraints.CENTER, GridBagConstraints.NONE, new Insets(0,0,0,0), 1,1));

      JLabel labe3 = new JLabel();
      labe3.setOpaque(true);
      labe3.setFont(new Font("Helvetica", Font.BOLD,14));
      labe3.setText("Suchbegriff: ");
      pane.add(labe3, new GridBagConstraints(0,2,1,1,1.0,0.1,
         GridBagConstraints.CENTER, GridBagConstraints.NONE, new Insets(0,0,0,0), 1,1));

      JTextArea ausg = new JTextArea();
      ausg.setFont(new Font("Helvetica", Font.PLAIN, 14));
      ausg.setEditable(false);
      JScrollPane scro = new JScrollPane(ausg);
      pane.add(scro, new GridBagConstraints(3,1,6,3,1.0,0.1,
         GridBagConstraints.WEST, GridBagConstraints.BOTH, new Insets(0,0,0,0),1,1));

      JTextField tf1 = new JTextField();
      tf1.setFont(new Font("Helvetica", Font.PLAIN, 14));
      pane.add(tf1, new GridBagConstraints(1,1,1,1,1.0,0.1,
         GridBagConstraints.WEST, GridBagConstraints.HORIZONTAL, new Insets(0,0,0,0),1,1));

      JTextField tf2 = new JTextField();
      tf2.setFont(new Font("Helvetica", Font.PLAIN, 14));
      pane.add(tf2, new GridBagConstraints(1,2,1,1,1.0,0.1,
         GridBagConstraints.WEST, GridBagConstraints.HORIZONTAL, new Insets(0,0,0,0),1,1));

      bu1 = new JButton();
      bu1.setText("Suchen");
      bu1.setBackground(Color.green);
      bu1.addActionListener(this);
      pane.add(bu1, new GridBagConstraints(0,3,1,1,1.0,0.1,
         GridBagConstraints.CENTER, GridBagConstraints.NONE, new Insets(0,0,0,0),1,1));

      bu2 = new JButton();
      bu2.setText("Schließen");
      bu2.setBackground(Color.red);
      bu2.addActionListener(this);
      pane.add(bu2, new GridBagConstraints(1,3,1,1,1.0,0.1,
         GridBagConstraints.CENTER, GridBagConstraints.NONE, new Insets(0,0,0,0),1,1));

      this.getContentPane().setLayout(new GridBagLayout());
         this.getContentPane().add(pane, new GridBagConstraints(0,0,1,1,1.0,1.0,
            GridBagConstraints.NORTH, GridBagConstraints.BOTH, new Insets(0,0,0,0),1,1));
            this.pack();
            this.setVisible(true);
   }
   public void actionPerformed(ActionEvent e){
     Object obj = e.getSource();
     if(obj == bu1){

     }
     if(obj == bu2) {
        this.dispose();
     }
   }
   public static void main(String[] args) {
      new Befehl();
   }
}
 

ghost

Bekanntes Mitglied
Ich habs jetzt ausprobiert ( mit deiner main und meiner, s.u. ) jedoch krieg ich bei beiden ne null pointer exception..
Code:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.sql.*;



public class Main{
	public static void main (String [] args){
	
		ActionListener L1 = new ActionListener(){
		public void actionPerformed(ActionEvent e){
			JFrame Befehl = new Befehl();
			//Befehl.setSize(600,400);
			//Befehl.setVisible(true);
			}
		};
		ActionListener ALInfo = new ActionListener(){
			public void actionPerformed(ActionEvent e){
				JFrame Inf = new Info();
				Inf.setSize(250,200);				
				Inf.setVisible(true);
				
			}
		};
		ActionListener ALend = new ActionListener(){
			public void actionPerformed(ActionEvent e){
				System.exit(0);
			}
		};

	JFrame fenster = new Komplett();
	fenster.setSize(700,280);
	
	JMenuBar mbar = new JMenuBar();
	JMenu prog = new JMenu("Programm");
	mbar.add(prog);
	fenster.setJMenuBar(mbar);
	JMenuItem info = new JMenuItem("Info");
	prog.add(info);
	info.addActionListener(ALInfo);
	JMenuItem end = new JMenuItem("Beenden");
	prog.add(end);
	end.addActionListener(ALend);
	JMenu sql = new JMenu("MySQL");
	mbar.add(sql);
	JMenuItem befehl = new JMenuItem("Einfache Suche");
	sql.add(befehl);
	befehl.addActionListener(L1);
	JMenu help = new JMenu("Hilfe");
	mbar.add(help);
	JMenuItem hilfe = new JMenuItem("Hilfe");
	help.add(hilfe);
	//hilfe.addActionListener(Alhilfe);
	
	
	WindowListener l = new WindowAdapter(){
			public void windowClosing(WindowEvent e){
				System.exit(0);
			}
		};
	fenster.addWindowListener(l);
	//fenster.pack();
	fenster.setVisible(true);



}
}
 

ghost

Bekanntes Mitglied
Die Zeile kann ich dir leider nicht sagen, da es ne lange Fehlermeldung ist und um dos - Fenster so durchrauscht und leider kann ich bei meinem dos nicht hochscrollen. Sorry...
 

The_S

Top Contributor
Wie, du kannst bei deinem DOS nicht hochscrollen? Was hast du für ein OS? Drück gleich zu beginn mal die Pause-Taste, dann sollte das Bild bis zum nächsten Tastendruck stehenbleiben
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
Jose05 Java-Klasse im extra cmd-Fenster ausführen Allgemeine Java-Themen 3
berserkerdq2 Weiß jemand wie ich im Scenebuilder das Fenster so darstellen kann, dass beim Vollbildmodus die Objekte so angezeigt werden? Allgemeine Java-Themen 1
A Zusammenspiel javafx Fenster Allgemeine Java-Themen 1
M StdDraw-Fenster schliessen Allgemeine Java-Themen 1
D Klassen 2 Fenster in GUI Allgemeine Java-Themen 3
H Hilfe bei Erstellung eines Hilfe Fenster bei Tastendruck (F1 bei Win98) Allgemeine Java-Themen 5
T Fenster schließen verhindern Allgemeine Java-Themen 13
C Durch klicken von Button in GUI wird leeres Fenster geöffnet und nicht mein Spiel "Memory" Allgemeine Java-Themen 13
K Interface Fenster mit Regler Allgemeine Java-Themen 2
S BMI Rechner mit eclipse Visual Editor (Seperates Fenster) Allgemeine Java-Themen 7
F Fenster schließen bei Klick auf Kreuz Allgemeine Java-Themen 14
P Herausfinden, ob ein Process ein Fenster hat Allgemeine Java-Themen 1
K Doppeltes Fenster Allgemeine Java-Themen 3
F DOS-Fenster unterdrücke? Allgemeine Java-Themen 0
A Anderes Fenster neu laden Allgemeine Java-Themen 16
B Geöffnetes Fenster verifizieren Allgemeine Java-Themen 2
T LookAndFeel Java Skinning Fenster Allgemeine Java-Themen 13
M CapsLock abfragen wenn Fenster wieder aktiviert wird Allgemeine Java-Themen 5
E Prüfen ob Fenster mit Namen offen ist Allgemeine Java-Themen 2
N verdeckte Fenster werden im Vordergrund gezeichnet Allgemeine Java-Themen 6
N Fenster lädt nicht Allgemeine Java-Themen 28
J Zugriff auf Poker-Client Fenster Allgemeine Java-Themen 14
A Erkennen welches Fenster bei windowDeactivated aktiviert wird? Allgemeine Java-Themen 2
S Frage für ein popup Fenster Allgemeine Java-Themen 4
J Swing Wird invisible, nicht-ref. Fenster vom GC entfernt? Allgemeine Java-Themen 11
Z Fenster vergrößern und verkleiern Allgemeine Java-Themen 14
S Fenster "verschwindet" nicht, trotz setVisible(false); Allgemeine Java-Themen 22
A Zeichen beim Eingeben in ein DOS-Fenster nicht anzeigen? Allgemeine Java-Themen 3
J X11 app in Java Fenster Allgemeine Java-Themen 4
R Von Java aus Browser Fenster oeffnen und Webseite ausgeben? Allgemeine Java-Themen 2
H Fenster focus Allgemeine Java-Themen 5
Escorter .jar Datei Classpath mitgeben ohne Dos Fenster Allgemeine Java-Themen 8
ARadauer Fenster suchen und Verschieben Allgemeine Java-Themen 6
G Keyboard Shortcut (bei nicht aktivem fenster) Allgemeine Java-Themen 2
Steev Screenshot vom Bereich behind dem aktuellen Fenster machen Allgemeine Java-Themen 24
D Welches Fenster ist im moment aktiv? Allgemeine Java-Themen 11
T Java Fenster Allgemeine Java-Themen 5
C Fenster öffnen Allgemeine Java-Themen 4
P Login- Fenster Allgemeine Java-Themen 11
B kleines modales transparents Fenster ohne rahmen und buttons Allgemeine Java-Themen 15
J text aus externem fenster lesen Allgemeine Java-Themen 3
F neues fenster Allgemeine Java-Themen 3
P JTabbedPane Fenster minimieren Allgemeine Java-Themen 15
K Warten auf die Eingabe aus Fenster.... Allgemeine Java-Themen 2
M neue Thread in neuem Fenster Allgemeine Java-Themen 3
MQue Fenster aufklappen Allgemeine Java-Themen 3
C Fenster blinken lassen Allgemeine Java-Themen 2
T Explorer-Fenster öffnen mit Java Allgemeine Java-Themen 9
S Windows Fenster finden Allgemeine Java-Themen 9
E Wie bekomme ich mein Image in das Fenster Allgemeine Java-Themen 2
E Mit Button ein Fenster öffnen Allgemeine Java-Themen 4
G Java Fenster öffnen nach Iconklick(desktop) (helppls) Allgemeine Java-Themen 3
G Das aktuelle Fenster drucken Allgemeine Java-Themen 13
G mehrere JPanels als Fenster benutzen Allgemeine Java-Themen 3
M ALT-F4 fenster schließen unterdrücken Allgemeine Java-Themen 2
S Swing - Problem mit Fenster-/Komponenten-Größe Allgemeine Java-Themen 3
M 2 verschiedene LookAndFeels in einem Fenster möglich? Allgemeine Java-Themen 6
G Leere Fenster (Keine Schrift, Reiter/ Buttons) bei Java Allgemeine Java-Themen 5
F Fenster friert ein! Allgemeine Java-Themen 2
K JAVA Fenster-Modi Allgemeine Java-Themen 5
S fenster umbenennen Allgemeine Java-Themen 4
J Fenster aufpopen lassen? Allgemeine Java-Themen 8
N Java Fenster schließen Allgemeine Java-Themen 2
B JNI: HWND von aufrufendem Fenster bekommen. Allgemeine Java-Themen 4
W Fenster (EXCEL) aktivieren Allgemeine Java-Themen 6
J Fenster mit paint Methode selbst zeichnen Allgemeine Java-Themen 3
G Fenster verbinden (docken) Allgemeine Java-Themen 4
L Windows-Fenster "Arbeitsplatz" anzeigen Allgemeine Java-Themen 13
G Auf KeyEvent reagieren, wenn das Fenster nicht aktiv ist Allgemeine Java-Themen 8
C alle Fenster bleiben grau Allgemeine Java-Themen 4
G Fenster durch eigenen Button minimieren Allgemeine Java-Themen 6
J Mein Frame friert ein beim Uploaden Allgemeine Java-Themen 4
G Input Frame Allgemeine Java-Themen 6
Y Wie kann ich ein erstelltes JPanel meinem Frame hinzufügen? Allgemeine Java-Themen 1
MaxG. Swing Frame schließen Allgemeine Java-Themen 9
X Controller pro Frame? Allgemeine Java-Themen 8
A BlueJ Java Frame Java Editor --> Bluej / String title Allgemeine Java-Themen 8
S Bild in Frame Allgemeine Java-Themen 0
T Code durch eigenes Frame pausieren (ähnlich JDialog) Allgemeine Java-Themen 4
D Player Objekt - Frame über Server anzeigen lassen. Allgemeine Java-Themen 3
R Nullpunkt im Frame Allgemeine Java-Themen 4
J Swing Frame schließt ganzes Programm(Jasperreport) Allgemeine Java-Themen 6
J Runtime.exec setzt Fokus auf Frame Allgemeine Java-Themen 2
N Protocol Frame/Applet Allgemeine Java-Themen 4
A Frame nur Anwendungsweit in Vordergrund Allgemeine Java-Themen 2
Z Mit ActionListener in anderem Frame lauschen? Allgemeine Java-Themen 3
M Nochmal I-Frame zu Image Allgemeine Java-Themen 4
borobudur Find a AWT frame in SWT Allgemeine Java-Themen 4
S Von Frame zu Frame Allgemeine Java-Themen 7
D Kreis Rundes Frame Allgemeine Java-Themen 16
E "runder" Frame Allgemeine Java-Themen 9
G Kompletten Frame mit allen Objekten resizen Allgemeine Java-Themen 10
ARadauer mit keylistener hören auch wenn frame nicht den focus hat Allgemeine Java-Themen 2
G HTML-Seite im Frame Anzeige? Allgemeine Java-Themen 3
G Kontrolllampe im Frame Allgemeine Java-Themen 4
C Tastatureingabe in einem Frame abfragen Allgemeine Java-Themen 2
L Spielerei: Frame rekursiv darstellen Allgemeine Java-Themen 3
L Objekt in einem Frame wird im anderen benötigt Allgemeine Java-Themen 5
A mein Frame wird nicht schnell genung aktualisiert Allgemeine Java-Themen 7
R Window statt Frame Allgemeine Java-Themen 6

Ähnliche Java Themen

Neue Themen


Oben