首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ProgressMonitorInputStream不工作了吗?

ProgressMonitorInputStream不工作了吗?
EN

Stack Overflow用户
提问于 2012-01-15 18:07:05
回答 1查看 667关注 0票数 2

我正在尝试一个简单的基于套接字的文件传输程序来包含一个ProgressMonitorInputStream,我的文件传输工作正常。但是progressMonitor从来没有出现过。

我正在从服务器向客户端发送文件,当它连接时,我的文件传输得很好,但就是不明白为什么ProgressMonitor没有出现。

我搜索了一些示例,他们在PMIS中使用'this‘而不是'new Jframe()’,但由于我在main()中,它不允许我这样做。

代码语言:javascript
复制
//client
InputStream is = sock.getInputStream();
BufferedInputStream bis = new BufferedInputStream(
new ProgressMonitorInputStream(new JFrame(),"reading",is));
while ((read = bis.read(buffer,0,buffer.length)) != -1) {
//read from socket...now write to file 
}    
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-01-15 20:06:42

代码语言:javascript
复制
I searched some examples, they used 'this' instead of 'new Jframe()' in PMIS

你有关于How to Use Progress Bars的re_read教程,还有关于ProgressMonitorInputStream的基本描述

Swing是single threaded,如果要使用progress移动,则必须将此Stream重定向到BackroundTask,教程关于JProgressBar实现SwingWorker,另一个选项是包装到Runnable#Thread,但在这种情况下,必须将图形用户界面的输出包装到invokeLater()

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8868909

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档