>*-- display an animation form >oAnimation = NEWOBJECT("Animation", "avi.prg", "",; > "Message to display...",; > "Window caption (optional)",; > "YourAvi.avi") > >*-- processing goes here... > >*-- remove animation form >RELEASE oAnimation >>
>************************************************ >*-- Class: Animation >************************************************ >* Author............: Daniel Gramunt >* Created...........: 17.05.99 17:03:36 >*) Description.......: Displays an animation (AVI) using the animation control that >*) : ships with VFP. >*) : Handy for processes for which you cannot use a thermometer. >* Calling Samples...: oAnimation = NEWOBJECT("Animation", "avi.prg", "",; >* : "Creating PDF file",; >* : "PDF converter",; >* : "FileToPdf.avi") >* Parameter List....: >* Major change list.: >*-------------------------------------------------------------------------------------------------- >DEFINE CLASS Animation AS form > > DataSession = 1 > Height = 85 > Width = 360 > AutoCenter = .T. > Caption = "" > ControlBox = .F. > Closable = .F. > ClipControls = .F. > Name = "frmAnimation" > > ADD OBJECT lblMessage AS label WITH ; > WordWrap = .T., ; > Caption = "Your message goes here...", ; > Left = 6, ; > Top = 2, ; > Width = 355, ; > Name = "lblMessage" > > PROCEDURE Load > This.AddObject("oleAnimation", "oleControl", "MsComCtl2.Animation.2") > WITH This.oleAnimation > .Top = 28 > .Left = 46 > .Visible = .f. > ENDWITH > ENDPROC > > PROCEDURE Init > * Parameter List....: tcMessage - Message to display. Optional. > * : tcCaption - Form caption. Optional. > * : If omitted, the form doesn't have a title bar > * : tcAviFile - Animation file to display (default = fileCopy.avi) > * Major change list.: > *-------------------------------------------------------------------------------------------------- > LPARAMETER tcMessage, tcCaption, tcAviFile > > WITH This > > *-- check parameters ------------------------------------------------------------------------------ > IF TYPE("tcMessage") <> "C" OR EMPTY(tcMessage) > tcMessage = "Processing. Please be patient..." > ENDIF > IF TYPE("tcCaption") <> "C" OR EMPTY(tcCaption) > *-- no caption, so we remove the title bar > .TitleBar = 0 > ELSE > .TitleBar = 1 > .caption = tcCaption > ENDIF > IF TYPE("tcAviFile") <> "C" > tcAviFile = "fileCopy.avi" > ENDIF > .lblMessage.caption = tcMessage > .aviPlay(tcAviFile) > .show() > ENDWITH > ENDPROC > > PROCEDURE AviPlay > LPARAMETERS tcAviFile > > *-- make sure file exists > IF FILE(tcAviFile) > *-- update animation > WITH ThisForm.oleAnimation > .visible = .f. > .stop > .open(FULLPATH(tcAviFile)) > .play() > .Height = 60 > .Width = 275 > .visible = .t. > ENDWITH > ENDIF > ENDPROC > >ENDDEFINE >>