社区
Java SE
帖子详情
送分!JTextField的显示刷新的问题
comcy
2005-06-04 04:41:03
我写如下语句:
for (int i = 0 ; i<amount ; i++){
jtf.setText("共有"+amount+"户,目前处理第"(i+1)+"户,已完成"+((i+1)*100/amount)+"%");
}
显示的时候只显示最后的100%的一个界面
我想让这个JTextField随时刷新显示(或每加1%就刷新显示一次之类的也行),怎么办?
因为这个工作可能会处理很长时间。
...全文
445
13
打赏
收藏
送分!JTextField的显示刷新的问题
我写如下语句: for (int i = 0 ; i<amount ; i++){ jtf.setText("共有"+amount+"户,目前处理第"(i+1)+"户,已完成"+((i+1)*100/amount)+"%"); } 显示的时候只显示最后的100%的一个界面 我想让这个JTextField随时刷新显示(或每加1%就刷新显示一次之类的也行),怎么办? 因为这个工作可能会处理很长时间。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
13 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
gtlang78
2005-06-05
打赏
举报
回复
import java.awt.BorderLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JTextField;
import javax.swing.SwingUtilities;
public class RefreshTest {
public static void main(String[] args) {
final JTextField tf = new JTextField(40);
JButton btn = new JButton("Start");
btn.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
new Thread() {
public void run() {
final int amount = 100;
for (int i = 0; i < amount; i++) {
final int t = i;
SwingUtilities.invokeLater(new Runnable() {
public void run() {
tf.setText("共有" + amount + "户,目前处理第" + (t + 1)
+ "户,已完成" + ((t + 1) * 100 / amount) + "%");
}
});
try {
Thread.sleep(10);
} catch (InterruptedException e) {
}
}
};
}.start();
}
});
JFrame f = new JFrame();
f.getContentPane().add(tf, BorderLayout.CENTER);
f.getContentPane().add(btn, BorderLayout.SOUTH);
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.pack();
f.setLocationRelativeTo(null);
f.show();
}
}
comcy
2005-06-05
打赏
举报
回复
upupupupupupupup
believefym
2005-06-04
打赏
举报
回复
我认为,用不用线程要看楼主的目的
假如只是为了美化界面,可以考虑
假如涉及到性能问题,这个线程就没必要了,纯粹浪费时间
xinghe2004
2005-06-04
打赏
举报
回复
学习!
comcy
2005-06-04
打赏
举报
回复
上面的方法我都试过了
还是显示的时候只显示最后的100%的一个界面
各位大哥帮帮忙吧,急啊
comcy
2005-06-04
打赏
举报
回复
都不好使啊,大哥们!
这个类本身我没有定义成线程类,我该怎么做?
怎么定义成线程类?
cyicecream
2005-06-04
打赏
举报
回复
updateUI();
nian86
2005-06-04
打赏
举报
回复
二楼的狠!
我也想不出好办发
hzh_net
2005-06-04
打赏
举报
回复
通过线程控制。
public void run()
{
while(i<amount)
{
jtf.setText("共有"+amount+"户,目前处理第"(i+1)+"户,已完成"+((i+1)*100/amount)+"%");
try
{
Thread.sleep(30);//30--the length of time to sleep in milliseconds.
}
catch(InterruptedException e){}
i++;
}
}
-----
呵呵
^_^
aheadjava
2005-06-04
打赏
举报
回复
不好意思.进来了.....
mustdobetter
2005-06-04
打赏
举报
回复
路过
Z_Beginner
2005-06-04
打赏
举报
回复
通过线程控制。
public void run()
{
while(i<amount)
{
jtf.setText("共有"+amount+"户,目前处理第"(i+1)+"户,已完成"+((i+1)*100/amount)+"%");
try
{
Thread.sleep(35);
}
catch(InterruptedException e){}
i++;
}
}
play100
2005-06-04
打赏
举报
回复
for (int i = 0 ; i<amount ; i++){
SwingUtilities.invokeLater(new Runnable() {
public void run() {
jtf.setText(...);
}
});
}
java课程设计---局域网聊天程序的设计与实现.doc
其目的在于通过实践加深学生对面向对象程序 " "设计的理论、方法和基础知识的理解,掌握使用Java语言进行面向对象设计的基本方 " "法,提高运用面向对象知识分析实际
问题
、解决实际
问题
的能力。 " "2.课程设计任务...
java 写的浏览器 源代码
JTextField
jurl = new
JTextField
(60); JEditorPane jEditorPane1 = new JEditorPane (); JScrollPane scrollPane = new JScrollPane (jEditorPane1); JFileChooser chooser=new JFileChooser (); ...
Java开发技术大全 电子版
14.11.2时间的
刷新
代码544 14.11.3JRadioButton的事件响应代码545 14.11.4“确定”按钮的事件响应代码546 14.11.5“取消”按钮的事件响应代码548 14.11.6完整的程序548 14.12GUI程序设计实例3——字体选择...
【Java】
JTextField
文本框实时
显示
最近在写Java Swing相关作业时,需要循环
显示
文字到文本框,遇到
JTextField
文本框只
显示
最后一次的
问题
。 大致代码如下: for(int i=0; i<10; i++){
jTextField
.setText("第"+i+"次"); Thread.sleep(1000);//...
java
jtextfield
不
显示
_java
JTextField
为什么不能即使
显示
这里有两个.JAVA文件。importjava.awt.event.ActionEvent;importjava.awt.event.ActionListener;importjava.awt.event.ItemEvent;importjava.awt.event.ItemListener;... 我用了这么多函数 都没有把它
刷新
出来 展开
Java SE
62,614
社区成员
307,326
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章