Java GUI label ändert sich erst zum Schluss

Diskutiere Java GUI label ändert sich erst zum Schluss im Java Basics - Anfänger-Themen Bereich.
M

MotheBend

Java:
            public void actionPerformed(ActionEvent e) {
                
                File quelle = new File(fquelle.getText());

                
                if(!(fziel.getText().isEmpty())) {
                    fziel.setBackground(Color.WHITE);
                }else{
                    fziel.setBackground(Color.RED);
                    lstatus.setText("Bitte alle Felder ausfüllen!");
                }

                if(!(fquelle.getText().isEmpty())) {
                    fquelle.setBackground(Color.WHITE);
                }else{
                    fquelle.setBackground(Color.RED);
                    lstatus.setText("Bitte alle Felder ausfüllen!");
                }
                
                if(!(fordner.getText().isEmpty())) {
                    fordner.setBackground(Color.WHITE);
                }else{
                    fordner.setBackground(Color.RED);
                    lstatus.setText("Bitte alle Felder ausfüllen!");
                }
                
                if(fordner.getBackground().equals(Color.WHITE) && fziel.getBackground().equals(Color.WHITE) && fquelle.getBackground().equals(Color.WHITE)){
                    lstatus.setText("arbeitet...");
                    searchFile(quelle, fordner.getText());
                    lstatus.setText("Fertig!");
                    
                }
                

            }
Problem: Das Status label zeigt alles an, bis auf "arbeitet..."
Weil die Methode searchFile() dauert oftmals ein bisschen, und deswegen will ich, dass dann in der GUI das Jlabel geändert wird zu "arbeitet..." und danach zu "fertig".
 
L

LimDul

Das gab es die letzte Zeit öfter, du musst die Arbeit in einen eigenen Thread auslagern:
 
M

MotheBend

Das gab es die letzte Zeit öfter, du musst die Arbeit in einen eigenen Thread auslagern:
Könntest du mir dazu ein Code beispiel geben? Ich habs gerade mal geschafft die GUI so hinzubekommen, und jetzt das in nem anderen Thread auszulagern klingt mir ziemlich kompliziert. Wäre sehr nett. :)
 
L

lam_tr

Java:
            public void actionPerformed(ActionEvent e) {
               
                File quelle = new File(fquelle.getText());

               
                if(!(fziel.getText().isEmpty())) {
                    fziel.setBackground(Color.WHITE);
                }else{
                    fziel.setBackground(Color.RED);
                    lstatus.setText("Bitte alle Felder ausfüllen!");
                }

                if(!(fquelle.getText().isEmpty())) {
                    fquelle.setBackground(Color.WHITE);
                }else{
                    fquelle.setBackground(Color.RED);
                    lstatus.setText("Bitte alle Felder ausfüllen!");
                }
               
                if(!(fordner.getText().isEmpty())) {
                    fordner.setBackground(Color.WHITE);
                }else{
                    fordner.setBackground(Color.RED);
                    lstatus.setText("Bitte alle Felder ausfüllen!");
                }
               
                if(fordner.getBackground().equals(Color.WHITE) && fziel.getBackground().equals(Color.WHITE) && fquelle.getBackground().equals(Color.WHITE)){
                    lstatus.setText("arbeitet...");
                    searchFile(quelle, fordner.getText());
                    lstatus.setText("Fertig!");
                   
                }
               

            }
Problem: Das Status label zeigt alles an, bis auf "arbeitet..."
Weil die Methode searchFile() dauert oftmals ein bisschen, und deswegen will ich, dass dann in der GUI das Jlabel geändert wird zu "arbeitet..." und danach zu "fertig".
Kann es vielleicht sein das die searchFile Methode schneller arbeitet und das lStatus label zu schnell auf Fertig geht?
 
Thema: 

Java GUI label ändert sich erst zum Schluss

Passende Stellenanzeigen aus deiner Region:
Anzeige

Neue Themen

Anzeige

Anzeige
Oben