package SwingThreadTest;
import java.awt.EventQueue;
import java.util.Random;
import javax.swing.JComboBox;
/**
* Acest Class Runnable modifica Combo lista,Random adaugind numere de la 0.
* Pentru ca lista sa nu fie distrusa,opetatie de schimbare se redirectioneaza la THreadul
* de conducere a evenimentelor
* @author Dan
*
*/
public class GoodWorkerRunnable implements Runnable
{
public GoodWorkerRunnable(JComboBox<Integer> aCombo)
{
combo = aCombo;
generator = new Random();
}
@Override
public void run() {
// TODO Auto-generated method stub
try
{
while(true)
{
EventQueue.invokeLater(new Runnable() {
@Override
public void run() {
// TODO Auto-generated method stub
combo.showPopup();
int i = Math.abs(generator.nextInt());
if(i % 2 == 0)
{
combo.insertItemAt(new Integer(i), 0);
}
else if(combo.getItemCount() > 0)
{
combo.removeItemAt(i%combo.getItemCount());
}
}
});
Thread.sleep(1);
}
}catch(InterruptedException e) {}
}
private JComboBox<Integer> combo;
private Random generator;
}