Screen nur 1x öffnen können

internet

Top Contributor
Hallo,

ich habe den folgenden Code und möchte gerne, dass der Display / Screen nur 1x geöffnet werden kann.
D.h. ich rufe die Methode auf und ein Display / Screen öffnet sich (was es Stand jetzt auch macht).
Nun rufe ich noch einmal die Methode auf, aber es soll der verwendete Screen nur aktualisiert werden.
Aktuell ist es aber so, dass ich dann in der Task - Leiste einen zweiten Prozess (und ein weiteres Window) erhalten.

So sieht der Code aktuell aus:
Display display speichere ich aktuell auch in einem Layer drüber, sodass es nicht ständig neu erzeugt wird...

Java:
public static void openScreen(Display display, String url, int width, int height, String titleText,
            boolean fullscreen, boolean exitWithEsc, int exitKey) {

        LOGGER.info("START openScreen");

        display.asyncExec(new Runnable() {
            public void run() {

                final Shell shell = new Shell(display);

                if (exitWithEsc) {
                    shell.addListener(SWT.Traverse, new Listener() {

                        @Override
                        public void handleEvent(Event event) {
                            if (event.character == exitKey) {

                                event.doit = false;
                                shell.close();
                               
                                display.close();
                            }

                        }
                    });
                }

                shell.setSize(width, height);
                shell.setFullScreen(fullscreen);
                shell.setText(titleText);

                shell.setLocation(0, 0);
                GridLayout gridLayout = new GridLayout();
                gridLayout.numColumns = 3;
                gridLayout.marginWidth = 0;
                gridLayout.marginHeight = 0;

                shell.setLayout(gridLayout);

                final Browser browser = new Browser(shell, SWT.NONE);
                browser.setJavascriptEnabled(true);

                GridData data = new GridData();
                data.horizontalAlignment = GridData.FILL;
                data.verticalAlignment = GridData.FILL;
                data.horizontalSpan = 3;
                data.grabExcessHorizontalSpace = true;
                data.grabExcessVerticalSpace = true;
                data.widthHint = width;
                data.heightHint = height;
                browser.setLayoutData(data);

                shell.open();

                browser.setUrl(url);

            }
        });

        LOGGER.info("END openScreen");
        return;
    }

Ich schätze das Problem ist dadurch, dass ich mehrere Threads erstelle?
display.asyncExec(new Runnable() {
Lasse ich das weg, bekomme ich eine Exception (invalid Thread Access)...
Was muss ich hier ändern?
 

KonradN

Super-Moderator
Mitarbeiter
Wie wäre es, einfach einmal den Code sauber zu strukturieren statt alles in eine Methode zu werfen?

Dann wird es auch deutlich einfacher. sowas umzusetzen. Denn dann hast Du im Programm eine Instanz und die kennt den aktuellen Zustand und kann aktiv werden.

Die weiss dann z,B.: Es muss ein neues Fenster geöffnet werden bzw. es hat das offene Fenster und kann es aktualisieren.

Oder in anderen Worten:

Deine Probleme sind:
a) Du baust einfach alles in einer Methode mit lokalen Variablen auf
b) Du hast selbst eine Komplexität erreicht, die Dich offensichtlich den Überblick verlieren lässt.

Anzuwendende "Pattern":
a) Du willst Code sauber in Klassen aufteilen., Code gehört dann immer an die entsprechend richtige Stelle. (Bei Oberflächen haben sich Pattern wie MVC, MVVM, MVP, ... recht gut bewährt.)
b) Teile und Herrsche - Du willst den Code so unterteilen, dass Du kleine, übersichtliche Teile hast, die Du einfach und unproblematisch beliebig zusammen fügen kannst.
 

internet

Top Contributor
Wie wäre es, einfach einmal den Code sauber zu strukturieren statt alles in eine Methode zu werfen?

Dann wird es auch deutlich einfacher. sowas umzusetzen. Denn dann hast Du im Programm eine Instanz und die kennt den aktuellen Zustand und kann aktiv werden.

Die weiss dann z,B.: Es muss ein neues Fenster geöffnet werden bzw. es hat das offene Fenster und kann es aktualisieren.

Oder in anderen Worten:

Deine Probleme sind:
a) Du baust einfach alles in einer Methode mit lokalen Variablen auf
b) Du hast selbst eine Komplexität erreicht, die Dich offensichtlich den Überblick verlieren lässt.

Anzuwendende "Pattern":
a) Du willst Code sauber in Klassen aufteilen., Code gehört dann immer an die entsprechend richtige Stelle. (Bei Oberflächen haben sich Pattern wie MVC, MVVM, MVP, ... recht gut bewährt.)
b) Teile und Herrsche - Du willst den Code so unterteilen, dass Du kleine, übersichtliche Teile hast, die Du einfach und unproblematisch beliebig zusammen fügen kannst.
danke...
Aber ich brauche quasi zwei Instanzen...

Ich habe ein Window, das geöffnet bleibt.
Nun möchte ich von diesem Window einen weiteren Window öffnen.
Hier ist aber eben das Problem, dass ich das Window nicht nur 1x öffnen kann, sondern x mal...

Der Code soll mir nur ein zweites Window öffnen oder falls eines vorhanden ist bereits dies aktualisieren.
Die Instanz (Display) davon erstelle ich bereits in der Präsentationsschicht und schleife diese weiter (Parameter Display in der Methode...)
 

KonradN

Super-Moderator
Mitarbeiter
Du hast ein Programm. Und in dem musst Du Deine Daten halt vernünftig halten.

Und da ist das, was Du da haben willst doch unproblematisch. Du kannst dann eine Instanz einer Klasse haben, die die Verantwortung hat für dieses spezielle Fenster. Und von dieser Klasse hast Du eine Instanz. Von mir aus als Singleton (Wobei ich das kritisch sehe, aber am Anfang mag es das Handling vereinfachen. Nur eben gewöhnt man sich damit etwas in meinen Augen Schlechtes an). Dann kann Dein Programm von beliebig vielen Stellen aus darauf zugreifen und das Öffnen des Fensters anfordern.

Und diese Instanz schaut dann: Gibt es das besagte Fenster noch nicht? Dann wird es geöffnet. Danach werden die Daten gesetzt / aktualisiert.

Das kann man sogar in Deinen Code mit einbauen - was soll man auch Dinge sauber trennen:

  • Du fügst eine Klassenvariable ein, die die Shell speichert.
  • Da Du eine final Variable brauchst, wird das zu final Shell shell = getShell();
  • In der neuen Methode getShell prüfst Du, ob in der Klassenvariable schon etwas in einem gültigen Zustand ist. Wenn ja, dann wird das zurück gegeben, wenn nicht, dann wird eine neue Shell erzeugt mit allem, was zur Initialisierung notwendig ist.

Vermutlich wirst Du etwas in der Art mit dem GridData machen wollen, damit Du das anpassen kannst statt es nu zu erzeugen.

Aber wie gesagt: Sowas wird schlecht überschaubar. Das würde ich sauber aufteilen. Dann hast Du auch nicht so Probleme wie diese final (oder quasi final) Variablen. Du hättest dann auch nicht diese static Elemente.
 

internet

Top Contributor
Ich habe bereits ein Singleton, welches ich in einer Variable speichere (Display display). Dies übergebe ich dann der oben erstellten Methode..
Der oben erstellte Code ist nur eine Art Helper Klasse, damit ich andere Fenster vllt später mal öffnen kann..

Ich vermute aber dass diese Code stelle das Problem ist:
display.asyncExec(new Runnable() {

Daher die Frage, was muss hier geändert werden, damit ich einen neuen Thread hier erstelle (falls nicht vorhanden) oder eben den aktuellen Thread nehme?
 

internet

Top Contributor
Ok, dann verstehe ich es nicht...

Ich habe das. Das heißt, dass ich doch immer erstmal prüfe, ob Display bereits instanziert ist.
Wenn nein, erstellt es ein neues Objekt. Falls doch, nimmt es das Objekt.
Jedoch wird trotzdem immer ein neues Fenster erzeugt?

Java:
@Singleton
public class MyExecutionServiceBean {

    private Display display;

    public void loadScreen(){
    
        if(display == null) {
            display = Display.getDefault();
        }
        
        // Screen öffnen
        SWTScreenHelper.openScreen(display, "https://google.com", 300, 400, "Test",
                true, true, SWT.ESC);
        
    }
 

KonradN

Super-Moderator
Mitarbeiter
Ich habe das. Das heißt, dass ich doch immer erstmal prüfe, ob Display bereits instanziert ist.
Wenn nein, erstellt es ein neues Objekt. Falls doch, nimmt es das Objekt.
Display wird nie von Dir erzeugt! Du hast in der Klasse eine Referenz auf ein Display und wenn diese noch nicht gesetzt wird, wird die Variable mit dem default Display gesetzt.
Jedoch wird trotzdem immer ein neues Fenster erzeugt?
Display ist doch auch kein Fenster.

Dokumentation von Display:
Instances of this class are responsible for managing the connection between SWT and the underlying operating system. Their most important function is to implement the SWT event loop in terms of the platform event model. They also provide various methods for accessing information about the operating system, and have overall control over the operating system resources which SWT allocates.

Applications which are built with SWT will almost always require only a single display. In particular, some platforms which SWT supports will not allow more than one active display. In other words, some platforms do not support creating a new display if one already exists that has not been sent the dispose() message.

Das, was das Fenster erzeugt, ist im letzten Code das openScreen und davor halt die Erstellung einer neuen Shell Instanz (+ Anzeige dieser natürlich)
Dokumentation von Shell:
Instances of this class represent the "windows" which the desktop or "window manager" is managing. Instances that do not have a parent (that is, they are built using the constructor, which takes a Display as the argument) are described as top level shells. Instances that do have a parent are described as secondary or dialog shells.

Evtl. wäre es hilfreich, sich die Grundlagen von SWT etwas anzusehen, z.B. unter
 

internet

Top Contributor
ich habe es nun hinbekommen, nachdem ich Shell entsprechend verwendet habe...
Nun habe ich aber noch ein Problem:
- In der Seite, welche ich über den SWT Browser aufrufe, starte ich Musik (Primefaces nutze ich hierfür):

Java:
<p:audio
value="http://download.lisztonian.com/music/download/Larghetto+in+F-62.mp3"
player="mp3" autoplay="true" controls="false" />

Anhand der ESC - Taste habe ich definiert, dass das Fenster geschlossen werden soll, wenn diese betätigt wird:
Sie Code Block, den ich bereits gepostet habe...

Code:
                if (exitWithEsc) {
                    currentShell.addListener(SWT.Traverse, new Listener() {

                        @Override
                        public void handleEvent(Event event) {
                            if (event.character == exitKey) {

                                event.doit = false;
                                currentShell.close();
                                                        
                                displayShell = null;
                            }

                        }
                    });
                }

Nun ist das Problem aber, dass die Musik weiter abspielt.
Es scheint mir also, dass die Seite irgendwie im Hintergrund doch noch aktiv ist oder ähnliches.

Hier nun mein kompletter Code:
Code:
private Shell displayShell;

private void openScreen(String url, int width, int height, String titleText, boolean fullscreen,
            boolean exitWithEsc, int exitKey) throws ScreenAlreadyOpenException{

        LOGGER.info("START openScreen");

        Display display = Display.getDefault();
        
        if(displayShell != null) {
            throw new ScreenAlreadyOpenException();
        }

        display.asyncExec(new Runnable() {
            public void run() {

                final Shell currentShell;

                if (displayShell == null) {
                    currentShell = new Shell(display);
                } else {
                    currentShell = displayShell;
                }
                
                displayShell = currentShell;

                if (exitWithEsc) {
                    currentShell.addListener(SWT.Traverse, new Listener() {

                        @Override
                        public void handleEvent(Event event) {
                            if (event.character == exitKey) {

                                event.doit = false;
                                currentShell.close();
                                                        
                                displayShell = null;
                            }

                        }
                    });
                }

                currentShell.setSize(width, height);
                currentShell.setFullScreen(fullscreen);
                currentShell.setText(titleText);

                currentShell.setLocation(0, 0);
                GridLayout gridLayout = new GridLayout();
                gridLayout.numColumns = 3;
                gridLayout.marginWidth = 0;
                gridLayout.marginHeight = 0;

                currentShell.setLayout(gridLayout);

                final Browser browser = new Browser(currentShell, SWT.NONE);
                browser.setJavascriptEnabled(true);

                GridData data = new GridData();
                data.horizontalAlignment = GridData.FILL;
                data.verticalAlignment = GridData.FILL;
                data.horizontalSpan = 3;
                data.grabExcessHorizontalSpace = true;
                data.grabExcessVerticalSpace = true;
                data.widthHint = width;
                data.heightHint = height;
                browser.setLayoutData(data);

                currentShell.open();

                browser.setUrl(url);

            }
        });

        LOGGER.info("END openScreen");
        return;
    }

Eine Idee, wie ich das Problem lösen kann?
 

KonradN

Super-Moderator
Mitarbeiter
Wenn Du es über die Bowser Instanz abspielst: Wie wäre es, denn Du die Instanz merkst um da dann zu schauen, was da evtl. Abhilfe schaffen kann. Da gibt es ja viele Ideen:

Es gibt also generell viele Ideen und Möglichkeiten, die man testen könnte.
 

internet

Top Contributor
Wenn Du es über die Bowser Instanz abspielst: Wie wäre es, denn Du die Instanz merkst um da dann zu schauen, was da evtl. Abhilfe schaffen kann. Da gibt es ja viele Ideen:

Es gibt also generell viele Ideen und Möglichkeiten, die man testen könnte.
dispose() aufzurufen hat schon gereicht.
Vielen lieben Dank!
 

internet

Top Contributor
ich habe doch noch eine Frage bzgl. Fullscreen....

Ich hätte gerne einen kompletten Fullscreen. Beim Mac zeigt es mir dennoch die obere Leiste an.
Wie kann ich das verhindern?

Java:
                final Shell currentShell = new Shell(display);
                currentShell.setSize(width, height);
                currentShell.setFullScreen(fullscreen);
                currentShell.setText(titleText);

                currentShell.setLocation(0, 0);
                GridLayout gridLayout = new GridLayout();
                gridLayout.numColumns = 3;
                gridLayout.marginWidth = 0;
                gridLayout.marginHeight = 0;

                currentShell.setLayout(gridLayout);

                browser = new Browser(currentShell, SWT.NONE);
                browser.setJavascriptEnabled(true);

                GridData data = new GridData();
                data.horizontalAlignment = GridData.FILL;
                data.verticalAlignment = GridData.FILL;
                data.horizontalSpan = 3;
                data.grabExcessHorizontalSpace = true;
                data.grabExcessVerticalSpace = true;
                data.widthHint = width;
                data.heightHint = height;
                browser.setLayoutData(data);

                browser.setUrl(url);

                currentShell.pack();
                currentShell.open();
                
                while (!currentShell.isDisposed()) {
                    if (!display.readAndDispatch()) {
                        display.sleep();
                    }
                }
 

samsoo

Mitglied
Hallo

Java:
new Runnable() {
            public void run() {

                final Shell shell = new Shell(display);

                if (exitWithEsc) {
                    shell.addListener(SWT.Traverse, new Listener() {

                        @Override
                        public void handleEvent(Event event) {
                            if (event.character == exitKey) {

                                event.doit = false;
                                shell.close();
                              
                                display.close();
                            }

                        }
                    });
                }

                shell.setSize(width, height);
                shell.setFullScreen(fullscreen);
                shell.setText(titleText);

                shell.setLocation(0, 0);
                GridLayout gridLayout = new GridLayout();
                gridLayout.numColumns = 3;
                gridLayout.marginWidth = 0;
                gridLayout.marginHeight = 0;

                shell.setLayout(gridLayout);

                final Browser browser = new Browser(shell, SWT.NONE);
                browser.setJavascriptEnabled(true);

                GridData data = new GridData();
                data.horizontalAlignment = GridData.FILL;
                data.verticalAlignment = GridData.FILL;
                data.horizontalSpan = 3;
                data.grabExcessHorizontalSpace = true;
                data.grabExcessVerticalSpace = true;
                data.widthHint = width;
                data.heightHint = height;
                browser.setLayoutData(data);

                shell.open();

                browser.setUrl(url);

            }.run();

sollte klappen

(nicht start aufrufen!!!)
 

KonradN

Super-Moderator
Mitarbeiter
Das display.asyncExec ist ja dazu da, um auf den user-interface thread zu wechseln. UI Libraries mögen es in der Regel weniger, wenn diese von außerhalb des user-interface threads aufgerufen werden.

Daher wird da auch nirgends start aufgerufen - es ist ja kein Thread. Es wird nur Runnable als Interface genutzt damit das eben übergeben werden kann.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
G Screen nach Auswahl schließen und neuen öffnen?wie mach ichs AWT, Swing, JavaFX & SWT 8
M Loading Screen anzeigen bei Black Screen AWT, Swing, JavaFX & SWT 1
Danloc Swing Splash Screen Prozentanzeige AWT, Swing, JavaFX & SWT 4
S 3D-Grafik Marker zu aus Screen anvisiertem Object AWT, Swing, JavaFX & SWT 1
Hijo2006 Splash-Screen AWT, Swing, JavaFX & SWT 2
stylegangsta Splash Screen erscheint nicht AWT, Swing, JavaFX & SWT 30
J 2D-Grafik Windows Blue-Screen nach anzeigen eines Bildes in Java AWT, Swing, JavaFX & SWT 10
F GWT Screen size AWT, Swing, JavaFX & SWT 2
E Swing Grundlegendes Vorhehen. Login-Screen, danach Arbeits-Screen AWT, Swing, JavaFX & SWT 4
R MouseEvent.getX() liefert in Applet Screen-Koordinate AWT, Swing, JavaFX & SWT 2
G AWT Full-Screen Exclusive Mode AWT, Swing, JavaFX & SWT 3
P Swing || AWT unschlüssig + Layoutfrage [m. Screen] AWT, Swing, JavaFX & SWT 16
J Screen Capture AWT, Swing, JavaFX & SWT 5
S Splash Screen / "Loading" Anzeige im Programm AWT, Swing, JavaFX & SWT 27
L Animierter Splash-Screen (mit NetBeans 6.1 z.B.) AWT, Swing, JavaFX & SWT 2
F splash screen mit progress bar - probleme mit invoke later AWT, Swing, JavaFX & SWT 7
H Transparente Splash-Screen AWT, Swing, JavaFX & SWT 5
I Splash Screen AWT, Swing, JavaFX & SWT 7
O der neue eclipse 3.1 splash screen AWT, Swing, JavaFX & SWT 3
G Splash Screen AWT, Swing, JavaFX & SWT 6
OZAN86 einfaches Fenster öffnen scheitert AWT, Swing, JavaFX & SWT 18
W Zweites/neues Fenster durch Button öffnen AWT, Swing, JavaFX & SWT 6
MiMa JavaFX Fenster in JavaFX öffnen Schliessen (Initialisierung) AWT, Swing, JavaFX & SWT 20
OSchriever Anwendung aus SystemTray öffnen AWT, Swing, JavaFX & SWT 29
A 2 Stages gleichzeitig öffnen AWT, Swing, JavaFX & SWT 2
X Neues Fenster mit Button öffnen und bearbeiten AWT, Swing, JavaFX & SWT 4
platofan23 JAVAFX zweites Fenster öffnen AWT, Swing, JavaFX & SWT 2
A Ein browser Fenter prametrisiert öffnen AWT, Swing, JavaFX & SWT 15
L Java- UI zweites Fenster aus einer anderen Klasse öffnen durch ButtonClick AWT, Swing, JavaFX & SWT 4
J JavaFX Kamera im Programm öffnen AWT, Swing, JavaFX & SWT 6
D Mit Jmenu neue JFrame öffnen AWT, Swing, JavaFX & SWT 2
D Swing Neues (3.) Fenster öffnen AWT, Swing, JavaFX & SWT 2
S Tastatur frame nur nur 1 mal öffnen AWT, Swing, JavaFX & SWT 1
S Mit JButton neues Fester öffnen und das alte schließen AWT, Swing, JavaFX & SWT 3
T Swing Java-Frame bei Programmstart NICHT im Vordergrund öffnen AWT, Swing, JavaFX & SWT 2
L Swing JButton soll link öffnen AWT, Swing, JavaFX & SWT 1
N Swing Sorry nicht mal ein Fenster öffnen... AWT, Swing, JavaFX & SWT 19
G Swing JFrame öffnen bei Pidgin Benachrichtigung AWT, Swing, JavaFX & SWT 5
P JavaFX Project im Browser öffnen AWT, Swing, JavaFX & SWT 4
O Swing JDialog öffnen und dann warten bis er geschlossen wurde AWT, Swing, JavaFX & SWT 2
P Programm durch Dateiaufruf starten und Datei öffnen AWT, Swing, JavaFX & SWT 2
I JTable: Doppelklick auf Table soll neues Fenster öffnen und Daten aus JTable anzeigen AWT, Swing, JavaFX & SWT 4
D Dateien öffnen AWT, Swing, JavaFX & SWT 16
S Swing txt Dateien öffnen mit JFilleChooser AWT, Swing, JavaFX & SWT 4
O Neuen JFrame öffnen und alten schließen AWT, Swing, JavaFX & SWT 7
D Swing DICOM Files öffnen, wie? AWT, Swing, JavaFX & SWT 5
T SWT SWTBot Test: Dialog soll sich öffnen,wenn button gedrückt AWT, Swing, JavaFX & SWT 3
G Datei öffnen Dialog modifizieren AWT, Swing, JavaFX & SWT 13
J JTable Zeile anklicken und neues Frame öffnen AWT, Swing, JavaFX & SWT 4
B VLC Player in JavaFX öffnen AWT, Swing, JavaFX & SWT 7
X Popup Menü nur bei besonderem Fall öffnen AWT, Swing, JavaFX & SWT 3
F JavaFX KeyListener zum Fenster öffnen/schließen AWT, Swing, JavaFX & SWT 9
VfL_Freak AWT Browser öffnen und schließen via java.awt.Desktop AWT, Swing, JavaFX & SWT 4
M JavaFX WebView lässt sich nur einmal öffnen AWT, Swing, JavaFX & SWT 2
achillesat SWT Browser öffnen durch Button click AWT, Swing, JavaFX & SWT 5
P Event Handling Listener beim öffnen von einem JPopupMenu AWT, Swing, JavaFX & SWT 3
M Datei in jar öffnen AWT, Swing, JavaFX & SWT 11
M Swing Warum öffnen sich beim Zeichnen mit Swing plötzlich zwei Fenster? AWT, Swing, JavaFX & SWT 5
P versch. JPanel Klassen über Menü öffnen AWT, Swing, JavaFX & SWT 12
J Swing Fenster lässt sich nach Schließung nicht wieder öffnen AWT, Swing, JavaFX & SWT 4
S JFrame sicher öffnen AWT, Swing, JavaFX & SWT 9
D Neues Frame öffnen - und dazu altes schließen AWT, Swing, JavaFX & SWT 5
N Applet JButton soll html Datei aus einem Ordner öffnen AWT, Swing, JavaFX & SWT 2
E Fenster schließen und ein anderes öffnen AWT, Swing, JavaFX & SWT 9
R Swing Mit Swing eine throws Exception Methode öffnen AWT, Swing, JavaFX & SWT 3
N Swing FileFilter lässt JTree sich nicht öffnen AWT, Swing, JavaFX & SWT 2
J Swing Frame öffnen aus Frame mit JButton AWT, Swing, JavaFX & SWT 2
T SWT:Datei speichern / öffnen AWT, Swing, JavaFX & SWT 6
T speichern funktioniert,aber öffnen nicht AWT, Swing, JavaFX & SWT 2
J Mit Button neues Fenster öffnen AWT, Swing, JavaFX & SWT 17
J SWT Dialog in Dialog automatisch öffnen AWT, Swing, JavaFX & SWT 19
J Programm nur einmal öffnen AWT, Swing, JavaFX & SWT 3
J jme neues projekt öffnen AWT, Swing, JavaFX & SWT 4
L SWT Actionlistener Combobox öffnen AWT, Swing, JavaFX & SWT 4
X Swing JTable stets mit gleichem Inhalt öffnen AWT, Swing, JavaFX & SWT 3
E Applet Neuen Tab aus Applet öffnen AWT, Swing, JavaFX & SWT 3
C jComboBox in jTable ohne Klick öffnen AWT, Swing, JavaFX & SWT 4
C JComboBox Popup nicht öffnen AWT, Swing, JavaFX & SWT 4
T neues Fenster durch Button öffnen funktioniert nicht!! AWT, Swing, JavaFX & SWT 2
H Applet JApplet soll neues Tab im Browser öffnen AWT, Swing, JavaFX & SWT 2
J Fehler beim Gif Datei öffnen AWT, Swing, JavaFX & SWT 2
H Applet - Hilfedateien im Browser öffnen / eine Webseite laden AWT, Swing, JavaFX & SWT 6
N Swing außerhalb des Hauptframe Komponente/Frame öffnen AWT, Swing, JavaFX & SWT 2
O Login Dialog zweimal öffnen AWT, Swing, JavaFX & SWT 2
N Swing TreePath Datei öffnen AWT, Swing, JavaFX & SWT 7
B Datei öffnen Dialog AWT, Swing, JavaFX & SWT 9
W jar Datei öffnen AWT, Swing, JavaFX & SWT 4
P Firefox öffnen GUI AWT, Swing, JavaFX & SWT 8
Y JFrame in JFrame öffnen AWT, Swing, JavaFX & SWT 26
T Ordner öffnen nach Klick auf einen Button AWT, Swing, JavaFX & SWT 3
C AWT Über Pulldownmenü neue Javadatei öffnen AWT, Swing, JavaFX & SWT 7
hdi SWT Zwei mal Shell öffnen = Exception AWT, Swing, JavaFX & SWT 6
kodela FileChooser mit "absolutem" Root-Verzeichnis öffnen AWT, Swing, JavaFX & SWT 2
C Internetseite öffnen AWT, Swing, JavaFX & SWT 2
T AWT Vollbild öffnen und schließen AWT, Swing, JavaFX & SWT 3
M Fenster nach minimierung zum tray wieder öffnen AWT, Swing, JavaFX & SWT 3
S Auswahlfenster: Datei beim Doppelklick öffnen AWT, Swing, JavaFX & SWT 8
D Swing Ein dahinterliegendes Fenster nach dem öffnen schließe AWT, Swing, JavaFX & SWT 15
R Fenster versetzt öffnen AWT, Swing, JavaFX & SWT 5
Z Swing Problem mit JDialog öffnen AWT, Swing, JavaFX & SWT 10

Ähnliche Java Themen


Oben