ListModel dynamisch und schnell aber sicher ändern

Status
Nicht offen für weitere Antworten.

JuVman5KL

Mitglied
Hallo,
ich habe ein Problem mit einem Programm, das aus einer JList besteht, die alle Dateien eines Verzeichnisses ausgeben soll.

Code:
//mit NetBeans 6.5 GUI Designer erstellt

import java.io.*;
import java.util.*;
import javax.swing.*;
import javax.swing.ListModel.*;
import javax.swing.event.ListDataEvent;

public class FUNKTIONIERT extends javax.swing.JFrame{

    //falls alles durchsucht werden soll, können die Roots über eine Schleife
    //durchlaufen werden
    static File directory = new File("C:\\"); //man kann beliebiges Verzeichnis nehmen
    static File[] roots = directory.listRoots();

    static LinkedList list = new LinkedList();
    static DefaultListModel sampleModel = new DefaultListModel();

    //unwichtig
    //ListDataListener hat keine Adapter-Klasse
    /*javax.swing.event.ListDataListener listDataListener = new javax.swing.event.ListDataListener() {

        public void intervalAdded(ListDataEvent e) {
            //ohne revalidate() hängt sich das Programm auch auf
            jList1.revalidate();
        }

        public void intervalRemoved(ListDataEvent e) {
            jList1.revalidate();
            throw new UnsupportedOperationException("Not supported yet.");
        }

        public void contentsChanged(ListDataEvent e) {
            jList1.revalidate();
            throw new UnsupportedOperationException("Not supported yet.");
        }
    };*/
    

    //wieder wichtig
    public static void nextDirectory(String directory) throws NullPointerException,ArrayIndexOutOfBoundsException {
        File firstDirectory = new File(directory);
        File[] firstDirectoryArray = firstDirectory.listFiles();
        for(int a = 0; a < firstDirectoryArray.length; a++){
            //Idee: nextDirectory() in einem eigenen Thread laufen lassen und mit
            //dem JFrame kommunizieren lassen
            sampleModel.addElement(firstDirectoryArray[a].toString());

            //LinkedList zur Kontrolle der Methode nextDirectory(String directory)
            //list.add(firstDirectoryArray[a].toString());

            if(firstDirectoryArray[a].isDirectory() && firstDirectoryArray[a].list() != null){
                nextDirectory(firstDirectoryArray[a].toString());
            }
        }
    }

    //Erzeugung der GUI-Oberfläche durch NetBeans (unwichtig)
    public FUNKTIONIERT() {
        initComponents();
    }
    @SuppressWarnings("unchecked")
    private void initComponents() {

        jScrollPane1 = new javax.swing.JScrollPane();
        //sampleModel.addListDataListener(listDataListener);
        jList1 = new javax.swing.JList();

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
        setCursor(new java.awt.Cursor(java.awt.Cursor.DEFAULT_CURSOR));

        jList1.setModel(sampleModel);
        jList1.setDoubleBuffered(true);
        jScrollPane1.setViewportView(jList1);

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 421, Short.MAX_VALUE)
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 257, Short.MAX_VALUE)
        );

        pack();
    }

    //wieder wichtig
    public static void main(String args[]) {
   
        java.awt.EventQueue.invokeLater(new Runnable() {
            public void run() {
                new FUNKTIONIERT().setVisible(true);
            }
        });

        nextDirectory("C:\\Users");

        for(int i = 0; i < roots.length; i++){
            nextDirectory(roots[i].toString());
        }

        System.out.println(sampleModel.size()); //zur Überprüfung
    }
    
    // Variables declaration - do not modify
    public static javax.swing.JList jList1;
    public static javax.swing.JScrollPane jScrollPane1;
    // End of variables declaration

}

Die Klasse heißt sogar lustigerweise noch FUNKTIONIERT, weil die nextDirectory()-Methode, die erste war, die ich selbst geschrieben habe und ich mich damals sehr gefreut habe, dass sie mit System.out.println(list) läuft. Die Ausgabe dauert so allerdings bis zu 15 Minuten (ggf. heap size vergrößern).

Das Problem mit dem Programm in dieser Form ist, dass es sich aufhängt und ich weiß nicht warum. Ich vermute, dass die nextDirectory-Methode auch irgendwie in einem Thread laufen muss, oder das zumindest besser ist und die zwei Threads dann mit einander kommunizieren.

Ich bin für alle Vorschläge, seien sie auch nur Ansätze, dankbar.

Mfg
 

Marco13

Top Contributor
Meinst du mit "aufhängt" dass das GUI blockiert ist, solange er arbeitet, oder dass das Programm nie endet? Ersteres kannst du mit einem Thread lösen. Forensuche würde da ggf. schon helfen.
 

JuVman5KL

Mitglied
ein kleiner Nachtrag, der den Aufwand erklären soll:

Es hilft mir nichts, wenn die Liste vor dem Anzeigen komplett erstellt wird. Das Programm soll sich nämlich in etwa so wie die Suchfunktion von Windows XP verhalten (während in der Spalte links die Suche noch läuft, werden die Ergebnisse bereits angezeigt).

Mfg
 

JuVman5KL

Mitglied
@Marco13
Die Erstellung der Liste bricht an einem bestimmten Punkt ab. Man kann dann aber noch wie gewohnt in ihr scrollen (also kein typisches "Aufhängphänomen"). Es hängt sich also der Mechanismus zum Manipulieren der Liste auf. Die GUI läuft ja auch sicher (eben in einem Thread).
 

André Uhres

Top Contributor
Versuch's mal so:
Code:
public static void nextDirectory(String directory) throws NullPointerException, ArrayIndexOutOfBoundsException {
    File firstDirectory = new File(directory);
    final File[] firstDirectoryArray = firstDirectory.listFiles();
    for (int a = 0; a < firstDirectoryArray.length; a++) {
        final int a1 = a;
        SwingUtilities.invokeLater(new Runnable() {
            @Override
            public void run() {
                sampleModel.addElement(firstDirectoryArray[a1].toString());
            }
        });
        if (firstDirectoryArray[a].isDirectory() && firstDirectoryArray[a].list() != null) {
            nextDirectory(firstDirectoryArray[a].toString());
        }
    }
}
 

JuVman5KL

Mitglied
Hallo zusammen,
wenn ich nun die Methode nextDirectory() von einer Methode aus aufrufen möchte, die ein Ereignis behandelt (siehe Code-Beispiel), blockiert das GUI. Ich habe mich über Nebenläufigkeit informiert, z. B. SwingWorker. Nun habe ich folgendes Problem (Ich habe mich am Java-Tutorial auf http://java.sun.com/docs/books/tutorial/uiswing/concurrency/simple.html orientiert):
Wenn ich den Inhalt der nextDirectory()-Methode in die doInBackground()-Methode schreibe, ergibt sich das Problem, dass sich die nextDirectory()-Methode an ihrem Ende wieder selbst aufruft. Dies tut sie jedoch mit Argumenten, die ich der doInBackground-Methode() nicht einverleiben kann, oder?

Hier das Code-Beispiel:
Code:
import java.awt.BorderLayout;
import java.awt.event.MouseEvent;
import java.io.File;
import javax.swing.DefaultListModel;
import javax.swing.JButton;
import javax.swing.JList;
import javax.swing.JScrollPane;
import javax.swing.SwingWorker;

public class NewClass1 extends javax.swing.JFrame{
    static DefaultListModel listModel = new DefaultListModel();

    public void nextDirectory(String directory) {
        File firstDirectory = new File(directory);
        /*final*/ File[] firstDirectoryArray = firstDirectory.listFiles();
        for(int a = 0; a < firstDirectoryArray.length; a++){
            final File[] firstDirectoryArray1 = firstDirectoryArray;
            final int a1 = a;
            javax.swing.SwingUtilities.invokeLater(new Runnable() {

                public void run() {
                    listModel.addElement(firstDirectoryArray1[a1]);
                }

            });
            if(firstDirectoryArray[a].isDirectory() && firstDirectoryArray[a].list() != null){
                nextDirectory(firstDirectoryArray[a].toString());
            }
        }
    }

    public NewClass1() {
        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

        JList jList1 = new JList(listModel);
        JScrollPane jScrollPane1 = new JScrollPane(jList1);
        JButton jButton1 = new JButton("nextDirectory() starten");
        add(jScrollPane1, BorderLayout.SOUTH);
        add(jButton1, BorderLayout.NORTH);

        jButton1.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mouseClicked(java.awt.event.MouseEvent evt) {
                jButton1MouseClicked(evt);
            }
        });
    }

    private void jButton1MouseClicked(MouseEvent evt) {
        nextDirectory("C:\\");
    }


    public static void main(String[] args) {
        java.awt.EventQueue.invokeLater(new Runnable() {
            public void run() {
                NewClass1 abc = new NewClass1();
                abc.setVisible(true);
                abc.setSize(250, 200);
            }
        });
    }
}

Für erneute Hilfe wäre ich sehr dankbar.

Viele Grüße
 

JuVman5KL

Mitglied
Hallo zusammen,
ich habe die Lösung selbst gefunden. Ich habe das Programm schon etwas modifiziert und es jetzt außerdem aus NetBeans herauskopiert, weshalb es ein wenig anders aussieht. Die Lösung ist dennoch zu erkennen.

Code:
import java.io.File;
import javax.swing.*;
import javax.swing.ListModel.*;

public class FUNKTIONIERT_extended extends javax.swing.JFrame {

    static DefaultListModel sampleModel = new DefaultListModel();

    public FUNKTIONIERT_extended(){
        initComponents();
    }
    
    @SuppressWarnings("unchecked")
    private void initComponents() {                          

        buttonGroup1 = new javax.swing.ButtonGroup();
        jScrollPane1 = new javax.swing.JScrollPane();
        jList1 = new javax.swing.JList();
        jTextField1 = new javax.swing.JTextField();
        jLabel1 = new javax.swing.JLabel();
        jRadioButton1 = new javax.swing.JRadioButton();
        jRadioButton2 = new javax.swing.JRadioButton();
        jButton1 = new javax.swing.JButton();
        jButton2 = new javax.swing.JButton();
        jLabel2 = new javax.swing.JLabel();
        jRadioButton1.setSelected(true);
        buttonGroup1.add(jRadioButton1);
        buttonGroup1.add(jRadioButton2);

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
        setCursor(new java.awt.Cursor(java.awt.Cursor.DEFAULT_CURSOR));

        jList1.setModel(sampleModel);
        jList1.setDoubleBuffered(true);
        jScrollPane1.setViewportView(jList1);

        jTextField1.setText("C:\\\\Users");

        jLabel1.setText("Welches Verzeichnis soll durchsucht werden?");

        jRadioButton1.setText("bestimmtes Verzeichnis");

        jRadioButton2.setText("alle Verzeichnisse");

        jButton1.setText("OK");
        jButton1.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mouseClicked(java.awt.event.MouseEvent evt) {
                jButton1MouseClicked(evt);
            }
        });

        jButton2.setText("Beenden");
        jButton2.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mouseClicked(java.awt.event.MouseEvent evt) {
                jButton2MouseClicked(evt);
            }
        });

        jLabel2.setText("Anzahl der Elemente: 0");

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addContainerGap()
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 615, Short.MAX_VALUE)
                    .addComponent(jLabel1)
                    .addGroup(layout.createSequentialGroup()
                        .addComponent(jRadioButton1)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                        .addComponent(jTextField1, javax.swing.GroupLayout.DEFAULT_SIZE, 474, Short.MAX_VALUE))
                    .addComponent(jRadioButton2)
                    .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
                        .addComponent(jButton1)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                        .addComponent(jButton2))
                    .addComponent(jLabel2))
                .addContainerGap())
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addContainerGap()
                .addComponent(jLabel1)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jRadioButton1)
                    .addComponent(jTextField1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addGap(7, 7, 7)
                .addComponent(jRadioButton2)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jButton2)
                    .addComponent(jButton1))
                .addGap(18, 18, 18)
                .addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 278, Short.MAX_VALUE)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                .addComponent(jLabel2)
                .addContainerGap())
        );

        pack();
    }                        

    private void jButton2MouseClicked(java.awt.event.MouseEvent evt) {                                      
        setVisible(false);
        dispose();
        System.exit(0);
}                                     

    public void nextDirectory(String directory) {
        File firstDirectory = new File(directory);
        File[] firstDirectoryArray = firstDirectory.listFiles();
        for(int a = 0; a < firstDirectoryArray.length; a++){
            final File[] firstDirectoryArray1 = firstDirectoryArray;
            final int a1 = a;
            SwingUtilities.invokeLater(new Runnable() {
                public void run() {
                    sampleModel.addElement(firstDirectoryArray1[a1]);
                    jLabel2.setText("Anzahl der Elemente: " + sampleModel.size());
                }
            });
        
            if(firstDirectoryArray[a].isDirectory() && firstDirectoryArray[a].list() != null){
                nextDirectory(firstDirectoryArray[a].toString());
            }
        }
    }

    public class worker extends SwingWorker{

        @Override
        protected Void doInBackground() {
            sampleModel.clear();
            nextDirectory(jTextField1.getText());
            //publish(sampleModel);
        return null;
        }

        @Override
        public void done() {
            jButton1.setEnabled(true);
        }
    }

    public class workerAll extends SwingWorker {

        @Override
        protected Void doInBackground() {
            sampleModel.clear();
            File[] rootArray = File.listRoots();
            for(int h = 0; h < rootArray.length; h++){
                nextDirectory(rootArray[h].toString());
            }
            return null;
        }

        @Override
        public void done() {
            jButton1.setEnabled(true);
        }
    }
    
    private void jButton1MouseClicked(java.awt.event.MouseEvent evt) {                                      
        if(jRadioButton1.isSelected()) {
            new worker().execute();
            jButton1.setEnabled(false);
        }  else if(jRadioButton2.isSelected()) {
            new workerAll().execute();
            jButton1.setEnabled(false);
        }
    }                                     

    public static void main(String args[]) {

        javax.swing.SwingUtilities.invokeLater(new Runnable() {
            public void run() {
                new FUNKTIONIERT_extended().setVisible(true);
            }
        });
    }

    // Variables declaration - do not modify                     
    public static javax.swing.ButtonGroup buttonGroup1;
    public static javax.swing.JButton jButton1;
    public static javax.swing.JButton jButton2;
    public static javax.swing.JLabel jLabel1;
    public static javax.swing.JLabel jLabel2;
    public static javax.swing.JList jList1;
    public static javax.swing.JRadioButton jRadioButton1;
    public static javax.swing.JRadioButton jRadioButton2;
    public static javax.swing.JScrollPane jScrollPane1;
    public static javax.swing.JTextField jTextField1;
    // End of variables declaration                   

}
[/code]
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
S ListModel - Anzeige im JList Java Basics - Anfänger-Themen 4
M JList + ListModel Java Basics - Anfänger-Themen 26
hdi Worst-Performance-Award für Arbeiten mit ListModel Java Basics - Anfänger-Themen 7
hdi Synchronisation zwischen JList und ListModel Java Basics - Anfänger-Themen 6
districon Dynamisch Programmierung/Backtracking/Memoization Java Basics - Anfänger-Themen 3
T Klassen Denkfehler im Klassen "dynamisch" instanzieren? Java Basics - Anfänger-Themen 4
J Verundung dynamisch gestalten Java Basics - Anfänger-Themen 21
B Folgende Abfrage dynamisch programmieren? Java Basics - Anfänger-Themen 8
R Datenbank-Werte dynamisch ausgeben Java Basics - Anfänger-Themen 19
D new arraylist (List) dynamisch erstellen Java Basics - Anfänger-Themen 1
B Klassen Klasse dynamisch laden. Java Basics - Anfänger-Themen 8
N Dynamisch erzeugtes Label wird nicht angezeigt, TextField schon Java Basics - Anfänger-Themen 1
D Koordinatensystem dynamisch anpassen Java Basics - Anfänger-Themen 17
J Tableview, ObservableList ein bisschen dynamisch Java Basics - Anfänger-Themen 6
C Array - Länge dynamisch übergeben Java Basics - Anfänger-Themen 7
D Erste Schritte Dynamisch Objekte erzeugen und diese durchsuchen Java Basics - Anfänger-Themen 7
GreyFox Object dynamisch mit werten versehen. Java Basics - Anfänger-Themen 4
G Array dynamisch ausgeben Java Basics - Anfänger-Themen 3
S JTable dynamisch mit Datenbankinhalten füllen Java Basics - Anfänger-Themen 6
F Erste Schritte If Bedingung in Schleife dynamisch erweitern Java Basics - Anfänger-Themen 4
K JLabel zur Laufzeit dynamisch erzeugen Java Basics - Anfänger-Themen 7
V Text aus einer .txt dynamisch ins applet einpassen Java Basics - Anfänger-Themen 0
Y Eingabe-Formular mit JSP dynamisch machen - j/n/wie? Java Basics - Anfänger-Themen 2
N Dynamisch JTree erstellen Java Basics - Anfänger-Themen 3
R Objekte dynamisch erstellen? Java Basics - Anfänger-Themen 14
C Variablen Array dynamisch halten und ausrechnen Java Basics - Anfänger-Themen 14
N Ergebnisse dynamisch in Tabelle schreiben Java Basics - Anfänger-Themen 3
G JObjekte dynamisch vom Server erzeugen lassen Java Basics - Anfänger-Themen 4
I Dynamisch erzeugten Buttons Methoden zuweisen Java Basics - Anfänger-Themen 6
H Objekte dynamisch erzeugen? Java Basics - Anfänger-Themen 6
M Variablen dynamisch variableninhalt von Object auslesen Java Basics - Anfänger-Themen 4
S if-Block dynamisch aufbauen Java Basics - Anfänger-Themen 5
M Static Variable "dynamisch" aufrufen? Java Basics - Anfänger-Themen 8
B Klassen Objekte während der Laufzeit dynamisch anlegen Java Basics - Anfänger-Themen 8
A JButtons dynamisch generieren mit verschiedenen actionhandlern Java Basics - Anfänger-Themen 6
P Scrollpane mit dynamisch erzeugten Komponenten Java Basics - Anfänger-Themen 3
U JPanel dynamisch gestalten Java Basics - Anfänger-Themen 7
R Liste graphischer Objekte z.B. JButton dynamisch erstellen Java Basics - Anfänger-Themen 13
A Dynamisch die Anzahl der Threads in der Cyclic Barrier ändern Java Basics - Anfänger-Themen 2
K Datentypen Full qualified Name dynamisch gestalten Java Basics - Anfänger-Themen 7
M For-Schleifen dynamisch generieren? Java Basics - Anfänger-Themen 10
sqsh statische jlabels dynamisch verwalten Java Basics - Anfänger-Themen 2
O Wie kann man das einfach lösen? (dynamisch viele Attribute) Java Basics - Anfänger-Themen 6
L Tray-Einträge und dazu passende ActionListener dynamisch erzeugen? Java Basics - Anfänger-Themen 2
D JPanel dynamisch anpassen Java Basics - Anfänger-Themen 5
S Dialog dynamisch vergrößern Java Basics - Anfänger-Themen 2
S Dynamisch Zeit auslesen Java Basics - Anfänger-Themen 11
M JTextPane dynamisch erzeugen Java Basics - Anfänger-Themen 2
J Aufgaben Dynamisch auf Pool von Threads verteilen. Java Basics - Anfänger-Themen 3
D ArrayList dynamisch befüllen Java Basics - Anfänger-Themen 14
G Objekteigenschaften dynamisch erzeugen Java Basics - Anfänger-Themen 7
jnoob Checkbox in Dialog Dynamisch erstellen Java Basics - Anfänger-Themen 2
K suche nicht dynamisch Datenstruktur Java Basics - Anfänger-Themen 6
M Dynamisch Instanzen erstellen. Java Basics - Anfänger-Themen 4
G Zweidimensionales Array - dynamisch Java Basics - Anfänger-Themen 4
B arrays dynamisch vergrößern Java Basics - Anfänger-Themen 5
V Kundenklasse dynamisch erzeugen und id hochzählen? Java Basics - Anfänger-Themen 4
C Dynamisch durch alle Objektvariablen eines Objektes iteriere Java Basics - Anfänger-Themen 15
P JPanel dynamisch mit ActionListener verwalten Java Basics - Anfänger-Themen 3
R Arraygroesse dynamisch anpassen Java Basics - Anfänger-Themen 8
X this dynamisch, super statisch? Java Basics - Anfänger-Themen 3
G Namen von ArrayListen dynamisch erzeugen Java Basics - Anfänger-Themen 4
H variable dynamisch ändern Java Basics - Anfänger-Themen 2
G Klasse dynamisch ohne Datei compilieren: Fehler Java Basics - Anfänger-Themen 4
G Klasse dynamisch nachladen: Fehler Java Basics - Anfänger-Themen 9
T Array Dynamisch Erweiterm Java Basics - Anfänger-Themen 15
H dynamisch Klassen laden und ausführen Java Basics - Anfänger-Themen 3
M Gleichungen dynamisch erstellen und ausrechnen? Java Basics - Anfänger-Themen 8
G Pfad dynamisch gestalten. Java Basics - Anfänger-Themen 3
B Matrix Dynamisch erzeugen Java Basics - Anfänger-Themen 3
G JTable dynamisch erzeugen. Java Basics - Anfänger-Themen 2
D Labels Dynamisch ? Java Basics - Anfänger-Themen 5
6 Swing: Dynamisch erzeugte Objekte sind verschoben Java Basics - Anfänger-Themen 2
G Variablenname dynamisch vergeben Java Basics - Anfänger-Themen 10
H 2DArray manuell dynamisch erweitern Java Basics - Anfänger-Themen 7
G Länge eines Array trimmen oder dynamisch verändern. Java Basics - Anfänger-Themen 3
M Dynamisch Klassen aufrufen Java Basics - Anfänger-Themen 4
H JLabel dynamisch anzeigen? Java Basics - Anfänger-Themen 10
T ActionListener zu Buttons dynamisch zuordnen Java Basics - Anfänger-Themen 10
G dynamisch Jtextfields erzeugen Java Basics - Anfänger-Themen 3
M HTML Seite die Daten in JavaApplet dynamisch verarbeiten Java Basics - Anfänger-Themen 2
H Variablenname dynamisch festlegen Java Basics - Anfänger-Themen 3
H Variablenname dynamisch festlegen Java Basics - Anfänger-Themen 3
J Tabelle mit mehreren Zeilen dynamisch aufbauen Java Basics - Anfänger-Themen 2
K Bild dynamisch erstellen Java Basics - Anfänger-Themen 2
M Klasse dynamisch erzeugen! Java Basics - Anfänger-Themen 4
M [SOLVED]JComboBoxen dynamisch erstellen und abfragen Java Basics - Anfänger-Themen 2
S Dynamisch Platz für ein Array reservieren? Java Basics - Anfänger-Themen 7
Z Objekte dynamisch erzeugen Java Basics - Anfänger-Themen 19
O Variabelnamen dynamisch generieren Java Basics - Anfänger-Themen 3
E Klassenaufrufe dynamisch mit Reflection Java Basics - Anfänger-Themen 4
J Instanzen dynamisch erzeugen Java Basics - Anfänger-Themen 8
G jar dynamisch laden Java Basics - Anfänger-Themen 6
B Kann man in Java Variablen dynamisch generieren? Java Basics - Anfänger-Themen 3
B JTextField dynamisch anpassen Java Basics - Anfänger-Themen 6
G Komponenten dynamisch auf contentPane einbinden Java Basics - Anfänger-Themen 5
S Objekte dynamisch anlegen Java Basics - Anfänger-Themen 3
G Objekt Namen dynamisch vergeben. Java Basics - Anfänger-Themen 7
T Newbie Frage. Vector dynamisch benennen :( Java Basics - Anfänger-Themen 5
F Objekte dynamisch erstelle Java Basics - Anfänger-Themen 11

Ähnliche Java Themen

Neue Themen


Oben