Bonjours!! Voilà j'ai un problème pour initialiser le curseur d'une jframe, lorsque que une jdialog est affiché. Dans ma jdialog j'ai un bouton qui envoie une requete et initialise la sourie et désactive les formulaire. Mais ca marche pas, la sourie ne change pas, ou du moins que sur la jdialog.
Voici le code, j'ai remplacer la requête par un thread pour faire plus simple.
public class Main extends JFrame{
public static Main frame;
public Main(){
super();
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLocationRelativeTo(null);
setVisible(true);
setExtendedState(MAXIMIZED_BOTH);
}
public void addDialog(){
final JDialog dialog = new JDialog(frame, false);
dialog.add(new JButton(new AbstractAction("test"){
public void actionPerformed(ActionEvent e) {
dialog.setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));
Main.frame.setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));
try {
Thread.currentThread().sleep(2000);
} catch (InterruptedException ex) {
Logger.getLogger(Main.class.getName()).log(Level.SEVERE, null, ex);
}
dialog.setCursor(Cursor.getDefaultCursor());
Main.frame.setCursor(Cursor.getDefaultCursor());
}
}), BorderLayout.SOUTH);
dialog.add(new JLabel("du contenue"));
dialog.pack();
dialog.setLocationRelativeTo(null);
dialog.setVisible(true);
}
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
initFrame();
}
public static synchronized void initFrame() {
SwingUtilities.invokeLater(new Runnable(){
public void run(){
Main.frame = new Main();
frame.addDialog();
}
});
}
}
Avait vous une explication?