Impressum · Kontakt · Hilfe
Besucher online · Mitglieder



Portal > Foren > Java > Desktop-Applikationen und Grafik > 2. JFrame von 1. JFrame aus starten und schließen
Antwort
 
Themen-Optionen
Alt 11.11.2005, 15:33   Nach oben    #1
Lautsprecher
Gast
 
Beiträge: n/a
Standard 2. JFrame von 1. JFrame aus starten und schließen

Hallo,
ich hab folgendes Problem, an dem ich jetzt schon die letzten drei Stunde herum bastle.
Ich habe eine Anwendung geschrieben JFrame!
Nun möchte ich per Knopfdruck aus dieser Anwendung ein 2. JFrame starten.

Ich funktioniert auch schon einigermaßen, nur blickt es immer nur ganz kurz auf und
verschwindet dann in der WindowsLeiste.
Wie erreiche ich es, dass das 2. JFrame vor dem 1. JFrame liegt und ich dort dann
Eingaben tätigen kann. Wichtig das 1. JFrame soll dabei schon im Hintergrund
erhalten bleibem:

Hab schon versucht im JFrame1 unter der actionPerformed des Button:

AnderesLand al = new AnderesLand();
al.show();
al.getFocusableWindowState();
al.enable(true);
al.setFocusable(true);

Aber irgendwie funtkioniert es noch nicht richtig!!



Mein JFrame 2 sieht so aus:
Code:
Code:
 import java.awt.event.KeyEvent; 
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import java.awt.Event;
import java.awt.BorderLayout;
import javax.swing.KeyStroke;
import javax.swing.JPanel;
import javax.swing.JMenuItem;
import javax.swing.JMenuBar;
import javax.swing.JMenu;
import javax.swing.JDialog;
import javax.swing.JFrame;
import javax.swing.JButton;
 
public class AnderesLand extends JFrame 
{   
 private JPanel jContentPane = null; 
   private JButton jBAusgabe = null;
	private JButton getJBAusgabe()
 {   
 if (jBAusgabe == null)
 {	
jBAusgabe = new JButton();   
 jBAusgabe.setBounds(new java.awt.Rectangle(53,38,57,33));  
  jBAusgabe.addActionListener(new java.awt.event.ActionListener()
 {
public void actionPerformed(java.awt.event.ActionEvent e) {System.out.println("actionPerformed()"); 
// TODO Auto-generated Event stub actionPerformed()  
				  }
}
);
}
return jBAusgabe;
}
public static void main(String[] args) 
{
AnderesLand application = new AnderesLand();
application.show();
}
public AnderesLand()
 {
	super(); 
   initialize();
}
private void initialize()
 {
this.setDefaultCloseOperation(this.EXIT_ON_CLOSE);
this.setSize(300, 200);
this.setContentPane(getJContentPane());
this.setTitle("Application");
}
private JPanel getJContentPane() 
{
if (jContentPane == null)
 {
jContentPane = new JPanel();
jContentPane.setLayout(null);
jContentPane.add(getJBAusgabe(), null);
}
return jContentPane;
}
}


Wenn ich dann auf unten in der Startleiste auf das JFrame klicke poppt es auf und ich kann den Button betätigen. Jedoch wenn ich das Fenster schließt, wird auch mein
JFrame 1 geschlossen. Was muss man coden, dass dann nur wieder das JFrame1
geschlossen wird
 
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 11.11.2005, 18:47   Nach oben    #2
sparrow
Sesselkleber
 
Benutzerbild von sparrow
 
Registriert seit: 17.01.2005
Beiträge: 567
Standard

Also ich versuche dir mal zu folgen.
Das was du beschreibst, dass das neue Frame auftaucht und wieder verschwindet kann ich mir nur schwer vorstellen.
Aber nimm doch für das Pop-Up Frame nicht ein JFrame sondern einen JDialog, der ist nämlich dafür da
Eigentlich verhält der sich ziemlich genauso wie ein JFrame, kann aber so geschaltet werden, dass er das Mutterfenster deaktiviert bis er wieder geschlossen wird.

Also in deinem 1. JFrame würde er dann so aufgerufen werden.

PHP-Code:
JDialog dialog = new JDialog(this"Titel"false); 
This = das Mutterfenster (also dein 1. JFrame)
"Titel" = Titel des Fensters
false = Der Parameter ob das Mutterfenster gesperrt wird während der Dialog angezeigt wird.


Wenn das nicht das ist was du suchst:
JFrame hat auch eine Methode .setAlwaysOnTop(true)
Damit verschwindet dein JFrame nicht mehr hinter andere Fenster.
sparrow ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 12.11.2005, 10:30   Nach oben    #3
Robinson
Benutzer
 
Registriert seit: 13.08.2005
Beiträge: 67
Standard

Kann es sein das bei Dir einfach nur das setVisible fehlt????
In dem geposteten Source fehlt das ja mal definitiv!
Robinson ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 14.11.2005, 07:46   Nach oben    #4
ezrael
Neuer Benutzer
 
Benutzerbild von ezrael
 
Registriert seit: 01.07.2004
Beiträge: 7
Standard

Zitat:
Zitat von sparrow
Also ich versuche dir mal zu folgen.
Das was du beschreibst, dass das neue Frame auftaucht und wieder verschwindet kann ich mir nur schwer vorstellen.
Aber nimm doch für das Pop-Up Frame nicht ein JFrame sondern einen JDialog, der ist nämlich dafür da
Eigentlich verhält der sich ziemlich genauso wie ein JFrame, kann aber so geschaltet werden, dass er das Mutterfenster deaktiviert bis er wieder geschlossen wird.

Also in deinem 1. JFrame würde er dann so aufgerufen werden.

PHP-Code:
JDialog dialog = new JDialog(this"Titel"false); 
This = das Mutterfenster (also dein 1. JFrame)
"Titel" = Titel des Fensters
false = Der Parameter ob das Mutterfenster gesperrt wird während der Dialog angezeigt wird.


Wenn das nicht das ist was du suchst:
JFrame hat auch eine Methode .setAlwaysOnTop(true)
Damit verschwindet dein JFrame nicht mehr hinter andere Fenster.
Wenn das Mutterfenster nur deaktiviert wird, kann es unter Umständen vorkommen, dass der Dialog hinter dem Mutterfenster liegt und der Anwender sich wundert dass das Mutterfenster nicht reagiert, da er den Dialog nicht sieht. Um das zu verhindern den dritten Parameter "modal" auf true setzen...
JDialog dialog = new JDialog(this, "Titel", true);
ezrael ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 14.11.2005, 18:52   Nach oben    #5
sparrow
Sesselkleber
 
Benutzerbild von sparrow
 
Registriert seit: 17.01.2005
Beiträge: 567
Standard

Zitat:
Zitat von ezrael
Zitat:
Zitat von sparrow
Also ich versuche dir mal zu folgen.
Das was du beschreibst, dass das neue Frame auftaucht und wieder verschwindet kann ich mir nur schwer vorstellen.
Aber nimm doch für das Pop-Up Frame nicht ein JFrame sondern einen JDialog, der ist nämlich dafür da
Eigentlich verhält der sich ziemlich genauso wie ein JFrame, kann aber so geschaltet werden, dass er das Mutterfenster deaktiviert bis er wieder geschlossen wird.

Also in deinem 1. JFrame würde er dann so aufgerufen werden.

PHP-Code:
JDialog dialog = new JDialog(this"Titel"false); 
This = das Mutterfenster (also dein 1. JFrame)
"Titel" = Titel des Fensters
false = Der Parameter ob das Mutterfenster gesperrt wird während der Dialog angezeigt wird.


Wenn das nicht das ist was du suchst:
JFrame hat auch eine Methode .setAlwaysOnTop(true)
Damit verschwindet dein JFrame nicht mehr hinter andere Fenster.
Wenn das Mutterfenster nur deaktiviert wird, kann es unter Umständen vorkommen, dass der Dialog hinter dem Mutterfenster liegt und der Anwender sich wundert dass das Mutterfenster nicht reagiert, da er den Dialog nicht sieht. Um das zu verhindern den dritten Parameter "modal" auf true setzen...
JDialog dialog = new JDialog(this, "Titel", true);
Ähm.. modal sorgt ja dafür ob das Elternfenster weiterhin bearbeitbar bleibt.
sparrow ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 15.11.2005, 09:28   Nach oben    #6
ezrael
Neuer Benutzer
 
Benutzerbild von ezrael
 
Registriert seit: 01.07.2004
Beiträge: 7
Standard

Zitat:
Zitat von sparrow
Ähm.. modal sorgt ja dafür ob das Elternfenster weiterhin bearbeitbar bleibt.
Genau. Wenn man modal auf true setzt, kann nichts mehr in das Mutterfenster eingegeben werden UND der Dialog bleibt immer vor dem Mutterfenster.
Ich hab' gerade nochmal nachgesehen:
Zitat:
When a modal Dialog is made visible, user input will be
blocked to the other windows in the application, except for
any windows created with this dialog as their owner.
Zitat:
@param modal if true, dialog blocks input to other app windows when shown
ezrael ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist An.
Smileys sind An.
[IMG] Code ist An.
HTML-Code ist Aus.
Trackbacks are An
Pingbacks are An
Refbacks are Aus

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Thread mehrfach starten jack77 Desktop-Applikationen und Grafik 18 07.03.2007 17:44
Inhalt von JFrame ändern sparrow Desktop-Applikationen und Grafik 14 20.10.2005 12:48
Größe vom JFrame mit Netbeans rausbekommen bacarni Desktop-Applikationen und Grafik 4 13.09.2005 18:11
Fenster schließen abfangen sparrow Desktop-Applikationen und Grafik 11 17.06.2005 11:09
Wie JMS-Klasse mit java starten u. nicht mit appclient??? maxpower24 Enterprise Java 3 22.10.2004 13:29


Alle Zeitangaben in WEZ +2. Es ist jetzt 06:43 Uhr.

Nach oben
Wir nutzen das Zend Framework, vBulletin (vBulletin v3.7.2, Copyright ©2000-2008, Jelsoft Enterprises Ltd.
SEO by vBSEO 3.0.0) und vBSEO.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44