![]() ![]() | |
进程栏允许您在内容加载过程中显示内容的进程。当用户与应用程序交互操作时,这是必需的反馈信息。
使用 ProgressBar 组件有几种模式;您可以使用模式参数来设置模式。最常用的模式是“事件”和“轮询”。这些模式使用 source 参数来指定一个加载进程,该进程发出 progress 和 complete 事件(事件模式)或公开 getBytesLoaded 和 getsBytesTotal 方法(轮询模式)。您也可以在手动模式下使用 ProgressBar 组件,方法是:手动设置 maximum、minimum 和 indeterminate 属性,并调用 ProgressBar.setProgress() 方法。
以下是您可以在属性检查器中或在“组件检查器”面板中为每个 ProgressBar 组件实例设置的创作参数:
mode 进度栏运行的模式此值可以是下列之一:事件、轮询或手动。默认值为事件。
source 一个要转换为对象的字符串,它表示源的实例名。
direction 进度栏填充的方向。该值可以在右侧或左侧,默认值为右侧。
label 指明加载进度的文本。该参数是一个字符串,其格式是“已加载 %2 的 %1 (%3%%)”;%1 是当前已加载字节数的占位符,%2 是加载的总字节数,%3 是当前加载的百分比的占位符。字符“%%”是字符“%”的占位符。如果某个 %2 的值未知,它将被替换为“??”。如果某个值未定义,则不显示标签。
labelPlacement 与进程栏相关的标签位置。此参数可以是下列值之一:顶部、底部、左侧、右侧、中间。默认值为底部。
conversion 一个数字,在显示标签字符串中的 %1 和 %2 的值之前,用这些值除以该数字。默认值为 1。
您可以编写“动作脚本”,通过利用其属性、方法和事件来控制 ProgressBar 组件的这些选项以及其他选项。有关详细信息,请参阅 ProgressBar 类。
以下过程解释了如何在创作时将 ProgressBar 组件添加到应用程序。在该范例中,进程栏用于事件模式。在事件模式中,加载内容必须发出 progress 事件和 complete 事件,进度栏使用这些事件来显示进度。Loader 组件会发出这些事件。有关详细信息,请参阅Loader 组件。
要创建带有事件模式 ProgressBar 组件的应用程序,请执行以下操作:loader.autoLoad = false; loader.content = "http://imagecache2.allposters.com/images/86/017_PP0240.jpg"; pBar.source = loader; // 直到调用加载方法,才开始加载。 loader.load();
在下面的范例中,在轮询模式下使用进度栏。在轮询模式中,ProgressBar 使用源对象的 getBytesLoaded 和 getBytesTotal 方法来显示其进度。
要在轮询模式中创建具有 ProgressBar 组件的应用程序,请执行以下操作:loader 的 Sound 对象,并调用 loadSound() 方法,以便将一个声音加载到 Sound 对象中:
var loader:Object = new Sound();
loader.loadSound("http://soundamerica.com/sounds/sound_fx/A-E/air.wav", true);
在下面的范例中,在手动模式下使用进度栏。在手动模式中,您必须设置 maximum、minimum 和 indeterminate 属性,并使用 setProgress() 方法来显示进度。在手动模式中不需设置 source 属性。
要创建具有手动模式 ProgressBar 组件的应用程序,请执行以下操作:setProgress() 方法,对每个文件下载过程手动更新进度栏:
for(var:Number i=1; i <= total; i++){
// 插入代码以加载文件
// 插入代码以加载文件
pBar.setProgress(i, total);
}
![]() ![]() | |