패키지 | fl.controls |
클래스 | public class ProgressBarMode |
상속 | ProgressBarMode Object |
언어 버전: | ActionScript 3.0 |
제품 버전: | Flash CS3 |
런타임 버전: | Flash Player 9.0.28.0, AIR 1.0 |
mode
속성 값을 정의합니다.
관련 API 요소
공용 속성
공용 메서드
공용 상수
상수 | 정의 주체 | ||
---|---|---|---|
EVENT : String = "event" [정적]
source 속성으로 지정된 구성 요소는 progress 및 complete 이벤트를 전달해야 합니다. | ProgressBarMode | ||
MANUAL : String = "manual" [정적]
ProgressBar 구성 요소의 상태를 수동으로 업데이트합니다. | ProgressBarMode | ||
POLLED : String = "polled" [정적]
진행률은 소스를 폴링하는 방법으로 업데이트됩니다. | ProgressBarMode |
상수 세부 정보
EVENT | 상수 |
public static const EVENT:String = "event"
언어 버전: | ActionScript 3.0 |
제품 버전: | Flash CS3 |
런타임 버전: | Flash Player 9.0.28.0, AIR 1.0 |
source
속성으로 지정된 구성 요소는 progress
및 complete
이벤트를 전달해야 합니다. 이 두 이벤트는 ProgressBar의 상태를 업데이트하는 데 사용됩니다.
관련 API 요소
ScrollPane complete 이벤트
ScrollPane progress 이벤트
UILoader complete 이벤트
UILoader progress 이벤트
LoaderInfo complete 이벤트
LoaderInfo progress 이벤트
Sound complete 이벤트
Sound progress 이벤트
FileReference complete 이벤트
FileReference progress 이벤트
URLLoader complete 이벤트
URLLoader progress 이벤트
URLStream complete 이벤트
URLStream progress 이벤트
ScrollPane progress 이벤트
UILoader complete 이벤트
UILoader progress 이벤트
LoaderInfo complete 이벤트
LoaderInfo progress 이벤트
Sound complete 이벤트
Sound progress 이벤트
FileReference complete 이벤트
FileReference progress 이벤트
URLLoader complete 이벤트
URLLoader progress 이벤트
URLStream complete 이벤트
URLStream progress 이벤트
예제 ( 예제 사용 방법 )
다음 예제에서는 ProgressBar, Label 및 UILoader 구성 요소 인스턴스를 만들고 이미지의 로드 진행률을 표시합니다.
import fl.containers.UILoader; import fl.controls.Label; import fl.controls.ProgressBar; import fl.controls.ProgressBarMode; import fl.events.ComponentEvent; var url:String = "http://www.helpexamples.com/flash/images/image2.jpg"; var myUILoader:UILoader = new UILoader(); myUILoader.visible = false; myUILoader.scaleContent = false; myUILoader.autoLoad = false; myUILoader.source = url; myUILoader.addEventListener(ComponentEvent.RESIZE, resizeHandler); myUILoader.load(); var myProgressBar:ProgressBar = new ProgressBar(); myProgressBar.mode = ProgressBarMode.EVENT; myProgressBar.indeterminate = false; myProgressBar.source = myUILoader; myProgressBar.setSize(320, 12); myProgressBar.move((stage.stageWidth - myProgressBar.width) / 2, (stage.stageHeight - myProgressBar.height) / 2); myProgressBar.addEventListener(Event.COMPLETE, completeHandler); myProgressBar.addEventListener(ProgressEvent.PROGRESS, progressHandler); addChild(myProgressBar); var myLabel:Label = new Label(); myLabel.text = ""; myLabel.autoSize = TextFieldAutoSize.LEFT; myLabel.move(myProgressBar.x, myProgressBar.y + myProgressBar.height); addChild(myLabel); function progressHandler(event:ProgressEvent):void { trace("progress:", event.bytesLoaded, "of", event.bytesTotal, "bytes"); myLabel.text = event.bytesLoaded + " of " + event.bytesTotal + " (" + event.currentTarget.percentComplete.toFixed(1) + "%)"; } function completeHandler(event:Event):void { trace("complete:"); removeChild(myLabel); removeChild(myProgressBar); myProgressBar.removeEventListener(ProgressEvent.PROGRESS, progressHandler); myProgressBar.removeEventListener(Event.COMPLETE, completeHandler); addChild(myUILoader); } function resizeHandler(event:ComponentEvent):void { trace("resize:"); var myUILdr:UILoader = event.currentTarget as UILoader; myUILdr.move((stage.stageWidth - myUILdr.width) / 2, (stage.stageHeight - myUILdr.height) / 2); myUILdr.visible = true; }
MANUAL | 상수 |
public static const MANUAL:String = "manual"
언어 버전: | ActionScript 3.0 |
제품 버전: | Flash CS3 |
런타임 버전: | Flash Player 9.0.28.0, AIR 1.0 |
ProgressBar 구성 요소의 상태를 수동으로 업데이트합니다. 이 모드에서는 minimum
및 maximum
속성을 지정하고 setProgress()
메서드를 사용하여 상태를 지정합니다.
관련 API 요소
예제 ( 예제 사용 방법 )
다음 예제에서는 ProgressBar 및 Label 구성 요소 인스턴스를 만들어 진행률 막대의 상태를 표시합니다.
import fl.controls.Label; import fl.controls.ProgressBar; import fl.controls.ProgressBarMode; var myProgressBar:ProgressBar = new ProgressBar(); myProgressBar.indeterminate = false; myProgressBar.mode = ProgressBarMode.MANUAL; myProgressBar.maximum = 256; myProgressBar.setSize(320, 16); myProgressBar.move(10, 10) addChild(myProgressBar); var myLabel:Label = new Label(); myLabel.text = ""; myLabel.autoSize = TextFieldAutoSize.LEFT; myLabel.move(myProgressBar.x, myProgressBar.y + myProgressBar.height); addChild(myLabel); var t:Timer = new Timer(150); t.addEventListener(TimerEvent.TIMER, timerHandler); t.start(); function timerHandler(event:TimerEvent):void { myProgressBar.setProgress(myProgressBar.value + 1, myProgressBar.maximum); if (myProgressBar.percentComplete == 100) { myProgressBar.setProgress(0, myProgressBar.maximum); } myLabel.text = int(myProgressBar.value) + " of " + int(myProgressBar.maximum) + " (" + int(myProgressBar.percentComplete) + "%)"; }
POLLED | 상수 |
public static const POLLED:String = "polled"
언어 버전: | ActionScript 3.0 |
제품 버전: | Flash CS3 |
런타임 버전: | Flash Player 9.0.28.0, AIR 1.0 |
진행률은 소스를 폴링하는 방법으로 업데이트됩니다. source
속성은 bytesLoaded
및 bytesTotal
속성을 표시하는 객체를 지정해야 합니다.
관련 API 요소
ScrollPane.bytesLoaded
ScrollPane.bytesTotal
UILoader.bytesLoaded
UILoader.bytesTotal
Sound.bytesLoaded
Sound.bytesTotal
NetStream.bytesLoaded
NetStream.bytesTotal
URLLoader.bytesLoaded
URLLoader.bytesTotal
ScrollPane.bytesTotal
UILoader.bytesLoaded
UILoader.bytesTotal
Sound.bytesLoaded
Sound.bytesTotal
NetStream.bytesLoaded
NetStream.bytesTotal
URLLoader.bytesLoaded
URLLoader.bytesTotal
예제 ( 예제 사용 방법 )
다음 예제에서는 ProgressBar를 사용하여 FLV 파일의 로드 진행률을 표시합니다.
import fl.controls.ProgressBar; import fl.controls.ProgressBarMode; var url:String = "http://www.helpexamples.com/flash/video/cuepoints.flv"; var nc:NetConnection = new NetConnection(); nc.connect(null); var ns:NetStream = new NetStream(nc); ns.client = {onMetaData:metaDataHandler}; ns.play(url); var vid:Video = new Video(); vid.attachNetStream(ns); vid.x = (stage.stageWidth - vid.width) / 2; vid.y = (stage.stageHeight - vid.height) / 2; addChild(vid); var myProgressBar:ProgressBar = new ProgressBar(); myProgressBar.mode = ProgressBarMode.POLLED; myProgressBar.indeterminate = false; myProgressBar.source = ns; myProgressBar.setSize(vid.width, myProgressBar.height); myProgressBar.move(vid.x, vid.y + vid.height); addChild(myProgressBar); function metaDataHandler(meta:Object):void { try { trace("w:" + meta.width, "h:" + meta.height); vid.width = meta.width; vid.height = meta.height; vid.x = (stage.stageWidth - vid.width) / 2; vid.y = (stage.stageHeight - vid.height) / 2; myProgressBar.width = vid.width; myProgressBar.move(vid.x, vid.y + vid.height); } catch (error:*) { // } }
Tue Jun 12 2018, 03:17 PM Z