Hallo zusammen,
im untem aufgeführten Programm wird nach dem OK des JFileChosser der Cursor auf WAIT gesetzt und danach eine Eingabe von mehren Dateien simuliert.
Eigentlich sollte der Cursor vor den Schleifen angezeigt werden aber erst nach beenden der Schleifen wird der Cursor gesetzt.
Kann mit jemand helfen?
Gruss Max
[/code]
im untem aufgeführten Programm wird nach dem OK des JFileChosser der Cursor auf WAIT gesetzt und danach eine Eingabe von mehren Dateien simuliert.
Eigentlich sollte der Cursor vor den Schleifen angezeigt werden aber erst nach beenden der Schleifen wird der Cursor gesetzt.
Kann mit jemand helfen?
Gruss Max
Code:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class Test extends JFrame{
JButton button = new JButton("Button");
//------------------------------------------------------------------------------------------------
public Test(){
super("Test");
Container contPane = getContentPane();
contPane.setLayout(null);
button.setBounds(280,130,100,30);
contPane.add(button);
button.addActionListener(new ButtonActionListener(this));
}
//------------------------------------------------------------------------------------------------
public static void main(String args[]){
Test app = new Test();
app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
app.setBounds(10,10,800,400);
app.setVisible(true);
}
//================================================================================================
class ButtonActionListener implements ActionListener{
JFileChooser chooser = new JFileChooser();
Test tst;
//------------------------------------------------------------------------------------------------
public ButtonActionListener(Test t){
this.tst = t;
}
//------------------------------------------------------------------------------------------------
public void actionPerformed(ActionEvent e){
int state = chooser.showOpenDialog(null);
if(state == JFileChooser.APPROVE_OPTION){
tst.setCursor(new Cursor(Cursor.WAIT_CURSOR));
for(int i=0;i<1000000;i++){ // Eingabe von Dateien simulieren
for(int j=0;j<10000;j++){
}
}
System.out.println("Fertig"); // hier erscheint der WAIT_CURSOR
}
}
}
//================================================================================================
}