jTextArea的实时显示问题(2)
2018-03-18 11:55
260 查看
如果需要使得textArea直接刷新,那么就需要和事件线程分开来,这样才能使得在事件还没结束的时候,那边就开始刷新
否则,会等到事件结束之后才返回相应的个结果。
因为事件处理线程和重绘线程是一个线程,所以你在事件处理线程面做这个事,当然要等这个方法返回后,才会响应界面了
你要实现IDE里面的一行一行的输出,就把你的
for(int tmp=0;tmp <10000;tmp++){
System.out.println( "(*^__^*) 嘻嘻…… "+tmp);
}
放到另一个线程里面去做就行了
为了有效果,再加一个睡眠会更好,改成如下的样子
public void actionPerformed(ActionEvent e) {
new Thread() {
public void run() {
for (int tmp = 0; tmp < 10000; tmp++) {
try {
System.out.println("(*^__^*) 嘻嘻…… " + tmp);
Thread.sleep(100);
} catch (InterruptedException ex) {
Logger.getLogger(Test1.class.getName()).log(Level.SEVERE, null, ex);
}
}
}
}.start();
}
否则,会等到事件结束之后才返回相应的个结果。
因为事件处理线程和重绘线程是一个线程,所以你在事件处理线程面做这个事,当然要等这个方法返回后,才会响应界面了
你要实现IDE里面的一行一行的输出,就把你的
for(int tmp=0;tmp <10000;tmp++){
System.out.println( "(*^__^*) 嘻嘻…… "+tmp);
}
放到另一个线程里面去做就行了
为了有效果,再加一个睡眠会更好,改成如下的样子
public void actionPerformed(ActionEvent e) {
new Thread() {
public void run() {
for (int tmp = 0; tmp < 10000; tmp++) {
try {
System.out.println("(*^__^*) 嘻嘻…… " + tmp);
Thread.sleep(100);
} catch (InterruptedException ex) {
Logger.getLogger(Test1.class.getName()).log(Level.SEVERE, null, ex);
}
}
}
}.start();
}
相关文章推荐
- jtextArea的实时显示问题
- linux目录大小显示不实时问题
- 一个php+js实时显示时间问题
- Ajax实时显示股票信息实例中的问题
- jQuery插件之ajaxFileUpload(异步上传图片并实时显示,并解决onchange后ajaxFileUpload失效问题)
- EM2040D数据采集软件SIS使用过程中图像实时显示问题(三)
- vue 修改 data 数据问题并实时显示的方法
- hi3518c + live555 实时传输 客户端显示的时候延时问题初步解决
- Win7下的Allegro不能实时显示的问题
- 解决textBox实时显示问题
- JTextArea append() 方法的每次循环不能正常显示的有关问题(刷新)
- hi3518c + live555 实时传输 客户端显示的时候延时问题初步解决
- 关于Java Swing怎么实时刷新JTextArea,以显示刚才加append的内容(线程角度)
- jTextArea实时更新显示
- 实时网络游戏-网络延迟时客户端显示问题
- EM2040D多波束采集软件SIS关于grid实时显示问题
- SWING开发之JTextArea的的中文显示问题
- EM2040D采集软件SIS中grid实时显示问题(二)
- photoshop 疑难问题之操作不实时显示
- Allegro之Win7下不能实时刷新操作显示的问题