// xp_progressbar
// Copyright 2004 Brian Gosselin of ScriptAsylum.com
//
// v1.0 - Initial release
// v1.1 - Added ability to pause the scrolling action (requires you to assign
// the bar to a unique arbitrary variable).
// - Added ability to specify an action to perform after a x amount of
// - bar scrolls. This requires two added arguments.
// v1.2 - Added ability to hide/show each bar (requires you to assign the bar
// to a unique arbitrary variable).
// var xyz = createBar(
// total_width,
// total_height,
// background_color,
// border_width,
// border_color,
// block_color,
// scroll_speed,
// block_count,
// scroll_count,
// action_to_perform_after_scrolled_n_times
// )
var w3c=(document.getElementById)?true:false;
var ie=(document.all)?true:false;
var N=-1;
function createBar(w,h,bgc,brdW,brdC,blkC,speed,blocks,count,action){
if(ie||w3c){
var t='<div id="_xpbar'+(++N)+'" style="visibility:visible; position:relative; overflow:hidden; width:'+w+'px; height:'+h+'px; background-color:'+bgc+'; border-color:'+brdC+'; border-width:'+brdW+'px; border-style:solid; font-size:1px;">';
t+='<span id="blocks'+N+'" style="left:-'+(h*2+1)+'px; position:absolute; font-size:1px">';
for(i=0;i<blocks;i++){
t+='<span style="background-color:'+blkC+'; left:-'+((h*i)+i)+'px; font-size:1px; position:absolute; width:'+h+'px; height:'+h+'px; '
t+=(ie)?'filter:alpha(opacity='+(100-i*(100/blocks))+')':'-Moz-opacity:'+((100-i*(100/blocks))/100);
t+='"></span>';
}
t+='</span></div>';
document.write(t);
var bA=(ie)?document.all['blocks'+N]:document.getElementById('blocks'+N);
bA.bar=(ie)?document.all['_xpbar'+N]:document.getElementById('_xpbar'+N);
bA.blocks=blocks;
bA.N=N;
bA.w=w;
bA.h=h;
bA.speed=speed;
bA.ctr=0;
bA.count=count;
bA.action=action;
bA.togglePause=togglePause;
bA.showBar=function(){
this.bar.style.visibility="visible";
}
bA.hideBar=function(){
this.bar.style.visibility="hidden";
}
bA.tid=setInterval('startBar('+N+')',speed);
return bA;
}}
function startBar(bn){
var t=(ie)?document.all['blocks'+bn]:document.getElementById('blocks'+bn);
if(parseInt(t.style.left)+t.h+1-(t.blocks*t.h+t.blocks)>t.w){
t.style.left=-(t.h*2+1)+'px';
t.ctr++;
if(t.ctr>=t.count){
eval(t.action);
t.ctr=0;
}}else t.style.left=(parseInt(t.style.left)+t.h+1)+'px';
}
function togglePause(){
if(this.tid==0){
this.tid=setInterval('startBar('+this.N+')',this.speed);
}else{
clearInterval(this.tid);
this.tid=0;
}}
//***************************************
function submitData(){
document.all.groundage.style.display="block";//导数据进度条
document.qyjczlgl.submit();
}
//************** ****************************
<tr id="groundage" style="display:none;">
<td colspan="6" align="center">
数据正在更新,请稍候...
<script type="text/javascript">
var bar1= createBar(300,25,'white',1,'black','green',85,7,3,"");
</script>
</td>
</tr>
分享到:
相关推荐
通过以上方法,你可以创建一个清晰、高效且易于理解的进度条显示系统,用于跟踪线程处理任务的进度。无论是使用基本的线程同步技术还是`BackgroundWorker`,关键在于正确地在多线程环境中管理和更新共享数据。在实际...
【VC 任务栏进度条绘制程序】是一种使用VC++编程语言实现的软件开发技术,它允许开发者在Windows任务栏上创建并控制自定义的进度条显示。这项技术基于Windows API,特别是利用了任务栏增强功能,使应用程序可以更加...
根据实际需求,你可能还需要处理进度条的实时更新、动画效果等复杂情况。同时,需要注意的是,这个功能仅适用于Windows 7及更高版本的操作系统,因为任务栏进度条是Windows 7的新特性。 通过这个例子,我们可以看到...
通过阅读和学习这个源码,你可以了解如何在易语言中创建和控制任务栏进度条的具体步骤,包括如何获取任务栏句柄、创建进度条、设置颜色和进度,以及如何处理窗口的布局和位置。 总的来说,易语言任务栏进度条的实现...
在C#编程中,创建一个实时显示进度的进度条是常见的需求,特别是在执行长时间操作时,如文件上传、下载或大型数据处理等。本程序通过使用线程技术解决了窗体主线程因执行耗时任务而无法实时更新界面的问题。下面我们...
在Windows操作系统中,任务栏进度条是一个非常实用的图形用户界面元素,它允许应用程序向用户显示执行过程的进度,增加了用户交互性和体验感。"很cool的任务栏进度条"可能是指一个特别设计或定制的任务栏进度条控件...
标题"进度条显示导出文件进度"所涉及的知识点主要集中在如何在文件导出过程中实时更新进度条的状态,确保用户能够了解导出的进度。 首先,我们要理解进度条(ProgressBar)组件。在Windows Forms或WPF等桌面应用...
在C++编程中,进度条百分比显示是一个常见的需求,特别是在执行长时间运行的任务时,它为用户提供了一种直观的方式来了解程序执行的进度。这个功能可以让用户知道程序还没有挂起,而是正在后台处理任务。在本篇文章...
本篇文章将详细讲解如何在ASP.NET中实现在前台显示后台处理进度条。 首先,我们需要理解ASP.NET的异步处理机制。在ASP.NET中,页面生命周期分为多个阶段,如初始化、加载、回发数据、验证、保存状态和卸载等。当...
进度条是一种常见的控件,用于显示任务的完成情况。Java 提供了多种方式来实现进度条,包括 `JProgressBar` 和 `ProgressMonitor`。本文将详细介绍如何使用 `ProgressMonitor` 来创建一个简单的进度监视器。 #### ...
本实验“TFTLCD触摸屏实验--ProgressBar进度条显示”聚焦于如何在51单片机上利用TFT液晶显示屏实现进度条的动态显示,这对于创建用户友好、互动性强的嵌入式设备界面至关重要。 TFT(Thin Film Transistor)液晶...
在Windows应用程序开发中,`DataGridView`控件是一个常用的组件,用于展示数据表格。当你需要在处理大量数据或...`WinTest`这个文件名可能是测试应用程序的一部分,你可以通过这个项目来练习和测试你的进度条显示功能。
线程(Thread)是多任务处理的基础,它允许程序同时执行多个独立的任务,以提高效率。当需要在执行耗时操作时更新进度条,线程的使用就显得尤为重要,因为主线程(UI线程)应该保持流畅,以便用户界面(UI)始终对...
标题“进度条显示可以显示正在处理内容”所指的核心知识点是LabVIEW中的进度条控件及其应用。进度条通常分为两种类型:固定范围的进度条,显示任务完成的百分比;以及可变范围的进度条,可以动态更新以反映当前处理...
### ExtJS中的进度条显示 #### 1. 使用`Ext.MessageBox.show()`方法创建进度条 `Ext.MessageBox.show()`是ExtJS提供的一种显示对话框的方法,其中包括一个进度条选项,这使得它非常适合用来显示任务的进度。例如,...
例如,你需要监听按钮的“单击”事件,当用户点击按钮时,启动进度条显示并开始执行相应的任务。 2. **进度条控件**:易语言提供了进度条控件,可以添加到按钮上或在其附近。设置进度条的最小值和最大值,然后通过...
总的来说,通过在C#的WinForm应用中使用进度条控件,并结合后台处理机制,可以有效地提高用户交互体验,尤其是在处理大量数据库数据时。合理的设计和实现能确保用户在等待过程中得到反馈,从而提高应用程序的可用性...
本文将详细介绍如何使用Java语言创建一个简单的图形界面(GUI),并通过进度条来显示任务的执行进度。 #### 技术栈 本示例主要使用了Swing库中的组件,Swing是Java中的一个用于创建图形用户界面的工具包,提供了...
在实际项目中,你可能还需要处理用户交互,如鼠标悬停事件,以显示额外的信息,或者在进度条完成时给出相应的提示。这可以通过`Shell_NotifyIcon`函数的`NIM_MODIFY`标志和`NIF_INFO`结构来实现。 总的来说,...
**Qt 文件拷贝带进度条显示** 在编程领域,特别是在GUI(图形用户界面)开发中,用户界面的反馈至关重要。当涉及到大文件的复制或移动时,提供一个进度条可以显著提升用户体验,让用户知道操作正在进行并估计剩余...