tabs+setProgressRange实现批量下载进度条效果
By
admin
at 2019-12-11 • 0人收藏 • 1724人看过
感谢 aardio培训群: 撒旦微笑 提供源码
什么是脑洞大开?
plus一个控件都可以玩出花 , 没想到tabs+plus的进度条功能 ,可以很容易的实现下面的效果
所以说, aardio没有做不到, 只有你想不到, 哈

import fonts.fontAwesome;
import win.ui;
/*DSG{{*/
var winform = win.form(text="aardio form";right=759;bottom=469;bgcolor=16777215)
winform.add(
plus={cls="plus";text="文件标题文件标题文件标题";left=16;top=33;right=740;bottom=79;align="left";bgcolor=8351487;color=16777215;foreRight=5;iconStyle={align="right";font=LOGFONT(h=-14;name='FontAwesome');padding={right=20}};iconText="3m/s";textPadding={left=20};z=1};
plus2={cls="plus";text="文件标题文件标题文件标题";left=16;top=95;right=740;bottom=141;align="left";bgcolor=8351487;color=16777215;foreRight=5;iconStyle={align="right";font=LOGFONT(h=-14;name='FontAwesome');padding={right=20}};iconText="3m/s";textPadding={left=20};z=2}
)
/*}}*/
import win.ui.tabs;
var tabs = win.ui.tabs(winform.plus,winform.plus2)
tabs.addItems(
{
{text = "文件标题文件标题文件标题"};
{text = "文件标题文件标题文件标题"};
{text = "文件标题文件标题文件标题"};
{text = "文件标题文件标题文件标题"};
}
)
tabs.skin({
background={
default=0xAAFF3068
};
foreground={
default=0xFFFF3068
}
})
for(strip,form,idx in tabs.each() ){
strip.setProgressRange(1,100);
strip.progressPos = 0;
}
var tag = {};
import console;
winform.setInterval(
100,function(){
var index = math.random(1,(#tabs.strips));
var strip = tabs.strips[index]
if(strip.progressPos <100){
strip.progressPos = strip.progressPos+1;
strip.iconText=math.round(math.random(),3)*10++" m/s"
}else {
strip.iconText = '\uF00C';
tag.index=index;
if(#tag=(#tabs.strips)){
return false;
}
}
}
)
winform.show()
win.loopMessage();
1 个回复 | 最后更新于 2019-12-16
登录后方可回帖
漂亮,如果同时下载的文件很多,窗口显示不下,要显示垂直滚动条该怎么办?