private class UpdateTask extends TimerTask {
String id; Timer myTimer = new Timer(); public UpdateTask(String id) {
this.id = id;
} public void run() {
parent.getDisplay().asyncExec(new Runnable() {
public void run() {
UICallBack.deactivate(id);
updateData();
}
});
} public void doScedule(int delay, int internal) {
myTimer.schedule(new UpdateTask(id), delay, internal);
} public void end() {
myTimer.cancel();
}
}这是一个定时器,我想在combo = new Combo(toolbar, SWT.NONE);
combo.setText("10秒");
combo.add("10秒");
combo.add("30秒");
combo.add("60秒");
combo.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent e) {
String ss = combo.getText().substring(0, 2);
time = Integer.valueOf(ss) * 1000;
updateTask.doScedule(0, time);
}
});这个监听调用它,达到10秒一刷新,30秒1刷新,60秒一刷新的三种实现,为什么他还是只按照10秒1刷新呢我默认int time=10000;就是默认10秒一刷新,求解答在线等,另外public void run() {
parent.getDisplay().asyncExec(new Runnable() {
public void run() {
UICallBack.deactivate(id);
updateData();
}
});
}这个什么意思?