关于Java Swing怎么实时刷新JTextArea,以显示刚才加append的内容(线程角度)
2016-03-10 16:05
411 查看
static JTextArea result;
在代码中执行完textArea.append("message")后,如果你想让这个更新立刻显示在界面上而不是等swing的主线程返回后刷新,我们一般会在该语句后调用textArea.invalidate()和textArea.repaint()。问题是这个方法并不能有任何效果,textArea的内容没有任何变化,这或许是swing的一个bug,有一个笨拙的办法可以实现这个效果,就是执行以下语句textArea.paintImmediately(textArea.getBounds()); 或 textArea.paintImmediately(textArea.getX(), textArea.getY(), textArea.getWidth(), textArea.getHeight()); 这时,你会发现你刚才增加的消息已经被实时地显示出来了。 试过这两种方法都不行。 后来把字段改为静态的, 然后另外起了一个线程就好了
相关文章推荐
- Error: weblogic.management.DeploymentException: Cannot set web app root system p
- iOS 7中实现模糊效果
- iOS通过dSYM文件分析crash
- 【Android疑难杂症】GridView动态设置Item的宽高导致第一个Item不响应或显示不正常的问题
- iOS 利用长按手势移动 Table View Cells
- Android组件间通信
- iOS7一行代码,搞定全屏手势返回
- android AlarmManager使用小例子
- Objective-C iOS多线程之GCD深入理解
- 自定义组件 -- android联系人
- MFC中Doc,View,MainFrmae,App各指针的互相获取
- android消息机制handler
- Android线程学习总结
- iOS :正则表达式与其它表达式的区别:
- Android适配器
- Android系统system用户权限和root权限的获取
- iOS 第三方登录之 QQ登录
- Android 中间白色渐变到看不见的线的Drawable
- Socket Programming : How to Integrate Socket.io java Client in your Android App without Maven
- Android系统源码剖析(一)---Settings