1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
   | ExecutorService executor = Executors.newSingleThreadExecutor();
 arbre.addSelectionListener(new SelectionAdapter()
    {
      public void widgetSelected(SelectionEvent e)
      {
         executor.submit(new Runnable() {
            @Override
            public void run() {
               try {
                  Thread.sleep(300);
               } catch (InterruptedException iex) {
                  iex.printStackTrace();
               }
               if (isEnabled()) {
                  e.display.asyncExec(new Runnable() {
                     @Override
                     public void run() {
                         // Action simple clic effectué dans le thread IHM.
                     }
                  });
               }
            }
         });
      }
 
    });
 
    arbre.addMouseListener(new MouseAdapter()
    {
      @Override
      public void mouseDoubleClick(MouseEvent e)
      {
        setEnabled(false);
        executor.submit(new Runnable() {
 
            @Override
            public void run() {
                try {
                    Thread.sleep(300);
                } catch (InterruptedException iex) {
                     iex.printStackTrace();
                }
                // Action double clic...
                setDoit(true);
            }
	});
      }
    }
}); | 
Partager