Fenster in LinkedList verwalten

derNiels

Neues Mitglied
Hallo :D,

habe eine Aufgabe bekommen mit der der ich nicht zurecht komme.
Ich soll alle geöffneten Fenster in einer Liste verwalten und wenn diese geschlossen werden, sollen diese aus der Liste gelöscht werden.
Über einen Button sollen alle noch geöffneten Fenster geschlossen werden.

Bin für eine kleinen Tip dankbar

wenn gewünscht kann ich auch die Klassen einstellen
 
G

Gast2

Gast
Es wäre zumindest mal nen Anfang zu sagen wo dein Problem liegt ;)
Dein bisheriger Quelltext wäre natürlich auch interessant.
 

derNiels

Neues Mitglied
mein Problem ist wie es bewerkstelligen soll alle Fenster in die Liste zu füllen
hauptklasse
Java:
public class DateienEinlesen extends JFrame {
    private static final long serialVersionUID = 5939729178368289077L;
    protected JTree jt;
    protected DefaultTreeModel jtm;

    private VerwaltungsIO vwio;
    private VerwaltungsIO parent;
    private Katalog topLevelKatalog;
    public static JTextArea BESCHREIBUNGS_FENSTER;
    private DateienEinlesen derFrame = null;
    private Knoten zuletztKopierterKnoten;


    public DateienEinlesen() {
	super("Verzeichnisinhalte!");
	derFrame = this;
    }

    public static void main(String[] args) {
	DateienEinlesen de = new DateienEinlesen();
	de.init(args);
	de.setVisible(true);
    }

    private void init(String args[]) {
	this.setSize(500, 400);
	this.addWindowListener(new DateienEinlesenEventHandler());
	if (args.length < 1) {
	    System.out.println("Verzeichnisliste und Katalog fehlen!");
	    System.exit(-1);
	} else {
	    vwio = new VerwaltungsIO(args[0]);
	    if (args.length > 1) {
		// Katalog aus Verzeichnissen initialisieren
		topLevelKatalog = new Katalog("StartKatalog");
		for (int i = 0; i < args.length; i++) {
		    vwio.baumEinlesen(topLevelKatalog, args[i]);
		}
		vwio.speichern(topLevelKatalog);
	    } else {
		// bereits serialisierten Katalog lesen
		topLevelKatalog = (Katalog) vwio.lesen();
	    }
	    if (topLevelKatalog != null) {
		initContentPane();
		initMenuBar();
	    } else {
		System.exit(-1);
	    }
	}
    }

    private void initMenuBar() {

	JMenuBar menuBar = new JMenuBar();
	JMenu katMenu = new JMenu("KatalogVerwaltung");
	//BEGINN Aufgabe3
	JMenu closeMenu  = new JMenu("Operationen");  
	//ENDE Aufgabe3
	MenuItemHandler mih = new MenuItemHandler();
	katMenu.add(this.createNewMenuItem(Konstanten.NeuKatalog, mih));
	katMenu.add(this.createNewMenuItem(Konstanten.NeuBild, mih));
	katMenu.add(this.createNewMenuItem(Konstanten.NeuTon, mih));
	katMenu.add(this.createNewMenuItem(Konstanten.Kopie, mih));
	katMenu.add(this.createNewMenuItem(Konstanten.Entfernen, mih));
	katMenu.add(this.createNewMenuItem(Konstanten.Eintragen, mih));
	katMenu.add(this.createNewMenuItem(Konstanten.Modifizieren, mih));
	
	
	// trage Menu in Menu-Balken ein
	menuBar.add(katMenu);
	// trage Menu-Balken in den aktuellen JFrame ein
	this.setJMenuBar(menuBar);
    }

    private void initContentPane() {
	jtm = new DefaultTreeModel(topLevelKatalog);
	jt = new JTree(jtm);
	// parametrisiere den Tree: editierbar und
	// immer nur ein Knoten selektierbar
	jt.setEditable(true);
	jt.getSelectionModel().setSelectionMode(
		TreeSelectionModel.SINGLE_TREE_SELECTION);
	jt.addMouseListener(new TreeHandlerMaus());
	jt.addKeyListener(new TreeHandlerTastatur());
	// der Tree soll in einem Scrollable Fenster liegen,
	// da man nie weiss, wie groß der Baum wird.
	JScrollPane scrPane = new JScrollPane();
	scrPane.getViewport().add(jt);

	this.getContentPane().setLayout(new java.awt.BorderLayout());
	// trage JScrollPane mit dem JTree in die Mitte des Layouts ein.
	this.getContentPane().add(java.awt.BorderLayout.CENTER, scrPane);
	// erzeuge Beschreibungsfenster (JTextArea)
	// ebenfalls in einem Scrollable Fenster und füge
	// dieses unterhalb der JTree-Pane ein.
	BESCHREIBUNGS_FENSTER = new JTextArea(
		"Hierhin kommt die Beschreibung des \n"
			+ "zuletzt ausgegebenen Dokuments!");
	scrPane = new JScrollPane();
	scrPane.getViewport().add(BESCHREIBUNGS_FENSTER);
	this.getContentPane().add(java.awt.BorderLayout.SOUTH, scrPane);
    }

    private JMenuItem createNewMenuItem(String name, MenuItemHandler mih) {
	JMenuItem result = new JMenuItem(name);
	result.addActionListener(mih);
	return result;
    }
   
    public class TreeHandlerTastatur extends KeyAdapter {
	/*
         * (non-Javadoc)
         * 
         * @see java.awt.event.KeyAdapter#keyPressed(java.awt.event.KeyEvent)
         */
	//@Override
	public void keyPressed(KeyEvent e) {
	    if (e.getKeyCode() == KeyEvent.VK_ENTER) {
		JTree jt = (JTree) e.getComponent();
		if (jt.getSelectionCount() == 1) {
		    // es ist ein Element selektiert
		    TreePath selPath = jt.getSelectionPath();
		    Knoten kn = (Knoten) selPath.getLastPathComponent();
		    if (kn instanceof Dokument) {
			((Dokument) kn).ausgeben();
		    }// else: bei Katalogen passiert nichts
		}
	    }
	}
    }

    public class TreeHandlerMaus extends MouseAdapter {

	public void mouseClicked(MouseEvent e) {
	    JTree jt = (JTree) e.getComponent();
	    int selRow = jt.getRowForLocation(e.getX(), e.getY());
	    TreePath selPath = jt.getPathForLocation(e.getX(), e.getY());
	    // es wurde tatsächlich ein Eintrag selektiert
	    if (selRow != -1) {
		// es soll tatsächlich etwas passieren:
		if (e.getClickCount() == 2) {
		    Knoten kn = (Knoten) selPath.getLastPathComponent();
		    if (kn instanceof Dokument) {
			((Dokument) kn).ausgeben();
		    }// else: bei Katalogen passiert nichts
		}
	    }
	}
    }

    public class DateienEinlesenEventHandler extends WindowAdapter {
       
        public void windowClosing(WindowEvent e) {
            // speichere ggf. geänderte Daten im Katalog
            // topLevelKatalog bleibt unverändert der Wurzelknoten
            if (vwio != null)
                vwio.speichern(topLevelKatalog);
            // beende Fensterausgabe
            e.getWindow().setVisible(false);
            e.getWindow().dispose();
            // beende Applikation
            System.exit(0);
	}
    }
    private void admAndInsert(Knoten kn, Knoten neuDok) {
	    Administration adm = new Administration(derFrame, neuDok);
	    if (adm.werteGeaendert()) {
		// trage neuen Knoten ins TreeModel ein, dabei wird automatisch
		// der JTree über Veränderungen informiert.
		jtm.insertNodeInto(neuDok, kn, kn.getChildCount());
		// mache Änderung sichtbar
		jt.scrollPathToVisible(new TreePath(kn.getPath()));
	    }
	}


class MenuItemHandler implements ActionListener{
    public void actionPerformed (ActionEvent e){
        String actionCommand = e.getActionCommand();
        TreePath selPath = jt.getSelectionPath();
        if(selPath != null){
            Knoten kn = (Knoten)selPath.getLastPathComponent();
            if(actionCommand.equals(Konstanten.NeuKatalog)){
                if(kn instanceof Katalog){
                    Katalog neuDok = new Katalog("");
                    Administration adm = new Administration(derFrame, neuDok);
                    if(adm.werteGeaendert()){
                        jtm.insertNodeInto(neuDok, kn, kn.getChildCount());
                        jt.scrollPathToVisible(new TreePath(kn.getPath()));
                    }
                }else{
                    DateienEinlesen.BESCHREIBUNGS_FENSTER.setText("Neuer Katalog kann nur in einem Katalog angelegt werden!");
                }
            }else
                if(actionCommand.equals(Konstanten.NeuBild)){
                    if(kn instanceof Katalog){
                        Dokument neuDok = new BildDokument("", "", "");
                        Administration adm = new Administration(derFrame, neuDok);
                        if(adm.werteGeaendert()){
                            jtm.insertNodeInto(neuDok, kn, kn.getChildCount());
                            jt.scrollPathToVisible(new TreePath(kn.getPath()));
                        }
                usw.


und die GUI klasse

Java:
import java.awt.BorderLayout;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.text.SimpleDateFormat;

import javax.swing.JButton;
import javax.swing.JDialog;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.JTextField;

/**
 * Diese Klasse realisiert einen Dialog, mit dem die Daten in einem Knoten
 * geändert werden können. Das Layout ist mit GridLayout und BorderLayout
 * realisiert. Je nachdem, ob ein Katalog oder ein Dokument angelegt/geändert
 * werden soll, werden unterschiedliche Fenster ausgegeben.
 * 
 *
 * 
 */
public class Administration extends JDialog {
  
   

    private SimpleDateFormat df = new SimpleDateFormat();

    private JTextField nameFeld = new JTextField();

    private JTextField datumFeld = new JTextField();

    private JTextField dateiFeld = new JTextField();

    // da die Beschreibung beliebig lang sein kann, wird
    // sie in eine JScrollPane gepackt
    private JTextArea beschrFeldIntern = new JTextArea();

    private JScrollPane beschrFeld = new JScrollPane();

    private JButton ok = new JButton("OK");

    private JButton abbruch = new JButton("Abbruch");

    // Knoten, der bearbeitet wird, wird im Eventhandler benötigt
    public Knoten kn;

    // wird benötigt, damit der Aufrufer einen Abbruch abfragen kann
    private boolean werteGeandert = false;

    public Administration(JFrame owner, Knoten inkn) {
	/*
         * Modalen Dialog initialisieren. Die aufrufende Methode wird erst
         * fortgesetzt, wenn dieser Dialog beendet wurde.
         */
	super(owner, "Administration", true);

	/*
         * Mit Swing ist für diesen Default kein EventHandler notwendig! Bei
         * einem Window-Closing-Event wird das Fenster geschlossen und die
         * zugehörigen Resourcen werden freigegeben. Man beachte, dass der
         * Default nicht so definiert werden kann, wenn zusätzliche Schritte wie
         * System.exit() oder ausgabeBeenden() notwendig sind!
         */
	this.setDefaultCloseOperation(DISPOSE_ON_CLOSE);

	kn = inkn;
	if (kn instanceof Katalog) {
	    init((Katalog) kn);
	} else {
	    init((Dokument) kn);
	}

	ok.addActionListener(new AdminButtonHandler());
	abbruch.addActionListener(new AdminButtonHandler());
	// Ausgabe und warten bis Aktion durch ok oder Abbruch beendet wird
	this.setVisible(true);
    }

    // Initialisierung des Dialogs für Kataloge
    private void init(Katalog ord) {
	this.setTitle("Administration: Katalog");
	this.setSize(400, 120);
	// GridLayout für 3 Einträge
	// in der ersten Spalte jeweils ein Label zur Beschreibung
	// in der zweiten Spalte das Ein/Ausgabefeld
	this.getContentPane().setLayout(new java.awt.GridLayout(3, 2));

	// Name
	this.getContentPane().add(new JLabel("Name: "));
	nameFeld.setText(ord.getName());
	this.getContentPane().add(nameFeld);

	// Datum
	this.getContentPane().add(new JLabel("Datum: "));
	datumFeld.setText(df.format(ord.getDatum()));
	this.getContentPane().add(datumFeld);

	// die Buttons in der untersten Zeile
	this.getContentPane().add(ok);
	this.getContentPane().add(abbruch);
    }

    // Initialisierung des Dialogs für Dokumente
    private void init(Dokument dok) {
	this.setTitle("Administration: " + dok.getClass().getName());
	this.setSize(400, 230);
	
	// GridLayout für 5 Einträge
	// in der ersten Spalte jeweils ein Label zur Beschreibung
	// in der zweiten Spalte das Ein/Ausgabefeld
	this.getContentPane().setLayout(new java.awt.BorderLayout());
	// neues Panel, in dem die oberen vier Zeilen platziert werden
	JPanel jp = new JPanel();
	jp.setLayout(new java.awt.GridLayout(4, 2));
	this.getContentPane().add(BorderLayout.NORTH, jp);
	// Name
	jp.add(new JLabel("Name: "));
	nameFeld.setText(dok.getName());
	jp.add(nameFeld);

	// Datum
	jp.add(new JLabel("Datum: "));
	datumFeld.setText(df.format(dok.getDatum()));
	jp.add(datumFeld);

	// Dateiname
	jp.add(new JLabel("Dateiname: "));
	dateiFeld.setText(dok.getDateiname());
	jp.add(dateiFeld);

	// Beschreibung
	jp.add(new JLabel("Beschreibung"));
	jp.add(new JLabel(""));

	// Beschreibungsfeld in Center:
	beschrFeldIntern.setText(dok.getBeschreibung());
	beschrFeld.getViewport().add(beschrFeldIntern);
	this.getContentPane().add(BorderLayout.CENTER, beschrFeld);

	// neues Panel für die Buttons
	jp = new JPanel();
	jp.setLayout(new GridLayout(2, 3));
	this.getContentPane().add(BorderLayout.SOUTH, jp);
	// die Buttons in der mittleren Spalte
	jp.add(new JLabel(" "));
	jp.add(ok);
	jp.add(new JLabel(" "));
	jp.add(new JLabel(" "));
	jp.add(abbruch);
	jp.add(new JLabel(" "));

    }

    /**
         * Gibt für den Aufruf an, ob nach Betätigen des OK-Buttons neue Werte
         * in einem Objekt existieren. Das ist insbesondere wichtig, wenn ein
         * neues Objekt angelegt wurde. Nach "OK" wird das neue Objekt in den
         * Baum eingetragen, nach "Abbruch" passiert das nicht.
         */
    public boolean werteGeaendert() {
	return werteGeandert;
    }

   //INNERE KLASSE MIT EVENTHANDLER FUER Buttons
    class AdminButtonHandler implements ActionListener {
	
	public void actionPerformed(ActionEvent e) {
	    String cmd = e.getActionCommand();
	    if (cmd != null) {
		// OK_Button - neue Werte müssen in das Knotenobjekt
		// übertragen werden
		if (cmd.equals("OK")) {
		    werteGeandert = true;
		    kn.setName(nameFeld.getText());
		    try {
		    	SimpleDateFormat df = new SimpleDateFormat();
			kn.setDatum(df.parse(datumFeld.getText()));
		    } catch (java.text.ParseException pe) {
			// lasse alten Wert stehen
		    }
		    if(kn instanceof Dokument) {
			Dokument dok = (Dokument)kn;
			dok.setDateiname(dateiFeld.getText());
			dok.setBeschreibung(beschrFeldIntern.getText());
		    }
		    /*
                         * else: bei Abbruch muß nichts getan werden. beende
                         * Fenster für Änderungen und Eingaben, bestimme
                         * JButton-Objekt, die dazugehörige AusgabePane und dann
                         * das äußerste umgebende AusgabeObjekt(also das
                         * Administrationsfenster)
                         */
		    JButton jbut = (JButton)e.getSource();
		    Administration adm = (Administration)jbut.getRootPane().getTopLevelAncestor();
		    adm.setVisible(false);
		    adm.dispose();
		}
	    }
	}
    }
}

Ich denke mal das dies die 2 wichtigsten Klassen sind.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
E Variable von 1. Fenster an 2. Fenster übergeben. Java Basics - Anfänger-Themen 7
javalux123 Keylistener auf andere Fenster Java Basics - Anfänger-Themen 3
T Java FXML selbes Fenster verschiedene Stellen im Programm Java Basics - Anfänger-Themen 5
B Scrollbares Fenster (JScrollPane) mit JPanel scrollt nicht Java Basics - Anfänger-Themen 3
J Überprüfen ob ein Fenster offen ist? Java Basics - Anfänger-Themen 8
T jOptionPane zum schließen von Fenster, wie "Ja" und "Nein" anstatt Yes und No Java Basics - Anfänger-Themen 2
JEP1 Java Dialog Fenster schließen Spiel Java Basics - Anfänger-Themen 0
H Eingabe tätigen bevor Graphics g Fenster öffnet Java Basics - Anfänger-Themen 5
celta_vigo Konsolen-Fenster ist weg Java Basics - Anfänger-Themen 5
Thomathy Interface Wie schließt man ein anderes JFrame Fenster? Java Basics - Anfänger-Themen 6
M PNG als Spieler im Fenster anzeigen Java Basics - Anfänger-Themen 4
S JOptionPane komplett leeres Fenster Java Basics - Anfänger-Themen 4
A Eclipse-Fenster starten statt Konsoleausgabe Java Basics - Anfänger-Themen 2
A Fenster bleibt weiß Java Basics - Anfänger-Themen 7
O Fenster programmieren Java Basics - Anfänger-Themen 2
M JavaFX: Fenster bleibt weiß Java Basics - Anfänger-Themen 3
A Fenster programmieren Java Basics - Anfänger-Themen 1
J JFrame Fenster öffnet sich nicht Java Basics - Anfänger-Themen 7
M aus Fenster anderes Fenster öffnen und wieder umgekehrt Java Basics - Anfänger-Themen 5
J Best Practice DOS Fenster mit Befehlszeile (Lösung) Java Basics - Anfänger-Themen 2
J Fenster wieder unsichtbar machen Java Basics - Anfänger-Themen 2
das_leon Gesamtes Programm in einem Fenster Java Basics - Anfänger-Themen 1
E Knopfdruck neues Fenster öffnen Java Basics - Anfänger-Themen 5
A Fenster mit Button aufrufen Java Basics - Anfänger-Themen 3
D Erste Schritte JPanel verschiebt Fenster via setVisible Java Basics - Anfänger-Themen 5
W Es wird erst gezeichnet, wenn ich das Fenster vergrößere? Java Basics - Anfänger-Themen 20
K Interface Fenster mit 3 ComboBoxen und 1 Button Java Basics - Anfänger-Themen 13
P Erste Schritte durch MenuBar verschiedene Fenster öffnen Java Basics - Anfänger-Themen 2
I Fenster A soll Fenster B schliessen Java Basics - Anfänger-Themen 5
D Java Fenster blockiert ? Java Basics - Anfänger-Themen 5
K Erste Schritte Neues Fenster mit Textinhalt öffnen Java Basics - Anfänger-Themen 6
M Code um per jButton ein neues Fenster zu öffnen Java Basics - Anfänger-Themen 3
A Popup-Fenster Java Basics - Anfänger-Themen 1
L Fenster auf Knopfdruck Java Basics - Anfänger-Themen 3
N Problem mit JOptionPane und Fenster-Fokus Java Basics - Anfänger-Themen 2
J ausgaben von der konsole in das fenster Java Basics - Anfänger-Themen 5
O Finally beim Fenster schliessen Java Basics - Anfänger-Themen 3
F Klassen Zugriff auf Fenster aus versch. Klassen Java Basics - Anfänger-Themen 5
P Eigenes Fenster erstellen Java Basics - Anfänger-Themen 5
M Input/Output Text auf Fenster zeichen Java Basics - Anfänger-Themen 2
T Zu viele Fenster - HILFE! Java Basics - Anfänger-Themen 5
J Extra Fenster (Frame) Java Basics - Anfänger-Themen 20
llabusch Fenster per Button verschieben Java Basics - Anfänger-Themen 5
llabusch Fenster um x Pixel verschieben Java Basics - Anfänger-Themen 4
P Window Builder Reiter im Fenster erstellen Java Basics - Anfänger-Themen 7
S Java Fenster Java Basics - Anfänger-Themen 2
D (zwei) Fenster mit unterschiedlicher Befüllung Java Basics - Anfänger-Themen 11
A JAVA Fenster in ein PDF Konvertieren Java Basics - Anfänger-Themen 1
A Erkennung eines Button im aktiven Fenster Java Basics - Anfänger-Themen 2
B Variable im Fenster anzeigen lassen? Java Basics - Anfänger-Themen 2
S Fenster ist zu groß Java Basics - Anfänger-Themen 8
O GUI: Eigene Fenster "Form"? Java Basics - Anfänger-Themen 13
X JFrame Fenster einzeln schließen Java Basics - Anfänger-Themen 2
E Fehlermeldung und Fenster wird nicht mehr angezeigt Java Basics - Anfänger-Themen 12
I Einlese Abfrage zweier Variablen in einem Fenster Java Basics - Anfänger-Themen 6
F Erste Schritte Aktuelles Fenster durch Event schließen Java Basics - Anfänger-Themen 3
N Java Programm im CMD Fenster öffnen, wie? Java Basics - Anfänger-Themen 17
S Erste Schritte Fenster wechsel im Applet Java Basics - Anfänger-Themen 7
tuttle64 Keine Umlaute im Dos Fenster Java Basics - Anfänger-Themen 12
J Button nimmt das komplette Fenster ein?! Java Basics - Anfänger-Themen 5
M Beim Klicken auf X neues Fenster Java Basics - Anfänger-Themen 4
Athena Schlichtes Fenster mit Windowskomponenten Java Basics - Anfänger-Themen 3
H KeyListener auf ganzes Fenster setzen Java Basics - Anfänger-Themen 14
S Neues Fenster auf Knopfdruck Java Basics - Anfänger-Themen 12
J Button drücken neues Fenster?! Java Basics - Anfänger-Themen 5
A Login Fenster Java Basics - Anfänger-Themen 3
C Button - neues Fenster - Bestellung anzeigen Java Basics - Anfänger-Themen 10
Z GUI-Fenster leeren Java Basics - Anfänger-Themen 5
M Erste Schritte Probleme mit Fenster Schließen Java Basics - Anfänger-Themen 6
J ordentliche Fenster Java Basics - Anfänger-Themen 17
J Problem beim Fenster Java Basics - Anfänger-Themen 4
Z Login Fenster Java Basics - Anfänger-Themen 7
K Aus JFrame-Fenster SuM-Fenster öffnen geht nicht! Java Basics - Anfänger-Themen 8
T Client-Fenster bei Aufruf unvollständig Java Basics - Anfänger-Themen 12
O Größeres Fenster als angegeben?! Java Basics - Anfänger-Themen 2
J Eltern-Fenster ermitteln Java Basics - Anfänger-Themen 2
M Ausklappbares Fenster bei grafischem Taschenrechner Java Basics - Anfänger-Themen 2
V Fenster wird nicht mittig platziert Java Basics - Anfänger-Themen 3
P gui fenster nur einmal aufrufen Java Basics - Anfänger-Themen 5
P Im Fenster bleiben (swing) Java Basics - Anfänger-Themen 16
J Werte ins neue Fenster übertragen Java Basics - Anfänger-Themen 6
S Fenster richtig schließen Java Basics - Anfänger-Themen 8
M Einfacher Fenster-Ablauf Java Basics - Anfänger-Themen 5
M Timer-Thread in Swing öffnet jedes Mal ein neues Fenster Java Basics - Anfänger-Themen 6
J Zweimal im gleichen Paint-Fenster malen Java Basics - Anfänger-Themen 8
SexyPenny90 Wie erstelle ich ein extra Fenster mit einer Meldung Java Basics - Anfänger-Themen 2
S nur neu geöffnetes Fenster schließen Java Basics - Anfänger-Themen 3
J Willkürlich geöffnetes Fenster/Dialog anspielen? Java Basics - Anfänger-Themen 3
M OOP GUI - Fenster vererben? Java Basics - Anfänger-Themen 9
T fenster schliesen und mouse events in einer nicht abstrakten klasse Java Basics - Anfänger-Themen 6
M Erste Schritte Fenster Und VB Funktionen Java Basics - Anfänger-Themen 8
G Scrollbares Fenster bei mehr als 5 Objekten Java Basics - Anfänger-Themen 4
L Fenster winzig klein durch GridBagLayout Java Basics - Anfänger-Themen 3
R Welcher Layout Manager-für so ein Fenster? Java Basics - Anfänger-Themen 5
H Java-Fenster ohne Inhalt Java Basics - Anfänger-Themen 2
T Windows Fenster Schließen Java Basics - Anfänger-Themen 4
E JFrame Fenster bewegen Java Basics - Anfänger-Themen 8
K Swing Fenster jede sec.neuzeichnen Java Basics - Anfänger-Themen 14
E javaw öffnet trotzdem ein DOS Fenster Java Basics - Anfänger-Themen 15
M Output Input im Cmd Fenster Java Basics - Anfänger-Themen 7

Ähnliche Java Themen

Neue Themen


Oben