我希望打开一个窗体时,能调用一个定时任务,这个任务没过一会就打印字符出来,现在窗体运行一段时间后,关闭后才打印出来,我希望这个打印字符能及时显示在窗体上,该怎么做呢?窗体类
package first;
import java.util.Timer;
import first.Task;public class mytest extends javax.swing.JFrame {
public mytest() {
initComponents();
}
private void initComponents() { setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
org.jdesktop.layout.GroupLayout layout = new org.jdesktop.layout.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(0, 400, Short.MAX_VALUE)
);
layout.setVerticalGroup(
layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(0, 300, Short.MAX_VALUE)
);
pack();
}
public static void main(String args[]) {
Timer timer = new Timer();
timer.schedule(new Task(), 1 * 1000, 5 * 1000);
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new mytest().setVisible(true);
}
});
}
}
任务类package first;
import java.util.TimerTask;public class Task extends TimerTask{ public Task() {
} public void run() {
System.out.print("aaaaaaaaa");
}
}
package first;
import java.util.Timer;
import first.Task;public class mytest extends javax.swing.JFrame {
public mytest() {
initComponents();
}
private void initComponents() { setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
org.jdesktop.layout.GroupLayout layout = new org.jdesktop.layout.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(0, 400, Short.MAX_VALUE)
);
layout.setVerticalGroup(
layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(0, 300, Short.MAX_VALUE)
);
pack();
}
public static void main(String args[]) {
Timer timer = new Timer();
timer.schedule(new Task(), 1 * 1000, 5 * 1000);
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new mytest().setVisible(true);
}
});
}
}
任务类package first;
import java.util.TimerTask;public class Task extends TimerTask{ public Task() {
} public void run() {
System.out.print("aaaaaaaaa");
}
}
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货