如何解决将标准输出进度条带到 QTextBrowser 的最佳方式
我从教程中编写的终端中有一个工作进度条。现在我想知道是否有可能将它作为输出输入到 GUI qttextbrowser 中?有人有什么想法吗?感谢您的帮助!
高级模具进度条:
class ProgressBar(object):
def __init__(self,message,width=20,progressSymbol=u'▣ ',emptySymbol=u'□ '):
self.width = width
if self.width < 0:
self.width =0
self.message = message
self.progressSymbol = progressSymbol
self.emptySymbol = emptySymbol
def update(self,progress):
totalBlocks = self.width
filledBlocks =int(round(progress / (100 / float(totalBlocks)) ))
emptyBlocks = totalBlocks - filledBlocks
progressBar = self.progressSymbol *filledBlocks + \
self.emptySymbol * emptyBlocks
if not self.message:
self.message =u''
self.progressMessage = u'\r{0} {1} {2}%'.format(self.message,progressBar,progress)
sys.stdout.write(self.progressMessage)
sys.stdout.flush()
def calculateAndUpdate(self,done,total):
progress = int(round((done / float(total)) * 100))
self.update(progress)
还有复制功能:
p = ProgressBar('copy ...')
def copyFile_progress(src,dest):
numFiles = countFiles(src)
if numFiles > 0:
makedirs(dest)
numcopied = 0
for path,dirs,filenames in os.walk(src):
for directory in dirs:
destDir = path.replace(src,dest)
makedirs(os.path.join(destDir,directory))
for sFile in filenames:
srcFile = os.path.join(path,sFile)
destFile = os.path.join(path.replace(src,dest),sFile)
shutil.copy(srcFile,destFile)
numcopied += 1
p.calculateAndUpdate(numcopied,numFiles)
print
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。