По своим свойствам и методам объект Button во многом похож на объект movieclip. Имея весьма схожие наборы свойств и методов, эти два объекта зачастую ведут себя одинаково. В частности, объект Buttonподдерживает свойства х, _у, _xmouse, _ymouse, _height, _width, _alpha и _rotation, уже знакомые нам по объекту movieClip. Однако объект Button не поддерживает методы play, stop, gotoAndPiay, gotoAndStop и подобные им, так как назначение его все же иное, чем у объекта movieclip. Так что кнопку можно рассматривать как очень специализированный, "урезанный" вариант клипа.
Рассмотрим специфические свойства объекта Button, которые обязательно пригодятся нам в работе с его экземплярами. (Кстати, многие из этих свойств поддерживаются и объектом movieclip, но редко используются в клипах.)
Свойство enabled позволяет разрешить или запретить пользователю нажимать кнопку. Оно имеет логический тип: значение true разрешает доступ к кнопке, а значение false — запрещает.
Свойство _visibie позволяет сделать кнопку видимой или невидимой. Оно имеет логический тип: значение true делает кнопку видимой, а значение false — невидимой. При этом невидимая кнопка также недоступна для нажатия.
Свойство useHandCursor задает, какую форму примет курсор мыши, если поместить его над кнопкой. Если задано значение true, то отображается курсор в виде "указующего перста" (как над гиперссылкой). Если же задано значение false, то курсор имеет вид обычной стрелки.
MovieClip — графический объект в среде Flash, который в отличии от Sprite может иметь анимацию. Это основной компонент в большинстве флеш-приложений.
Каждый MovieClip имеет собственную временную шкалу и благодаря этому может отображать анимацию и управлять ею. Также он является контейнером, и может содержать в себе другие MovieClip. Это динамичный класс (атрибут dynamic), что позволяет добавлять к нему новые свойства во время выполнения приложения. Создать новые экземпляры на лету можно с помощью оператора new. При этом, чтобы они отображались на сцене, надо не забыть прикрепить их к нужному контейнеру с помощью функции addChild().
На временной шкале каждого MovieClip можно разместить код ActionScript, что позволит управлять анимацией с помощью функций play(), stop(), gotoAndPlay(frame) и т.п, а также на ходу менять свойства или добавлять новую графику. В IDE Adobe Flash для вызова редактора кода достаточно выделить нужный кадр и нажать F9.
В ActionScript 3 главная сцена (stage) флеш-приложения может быть основана на классе, наследованном от MovieClip. Этот класс будет создан при воспроизведении флеш-приложения и станет связан со сценой. Таким образом, применяя в нем функции MovieClip, мы сможем управлять основной шкалой и рисовать прямо на сцене.
Если поменять значения некоторых свойств объекта MovieClip, содержащего анимацию движения, точка воспроизведения в этом MovieClip останавливается: alpha, blendMode, filters, height, opaqueBackground, rotation, scaleX, scaleY, scale9Grid, scrollRect, transform, visible, width, x или y. Однако он не останавливает анимацию дочерних объектов MovieClip данного объекта MovieClip.