Flex Flash製作類似桌面歌詞的可配置廣告牌

2022-03-07 17:54:59 字數 2063 閱讀 6999

相對flash來說flex的動畫功能還是比較弱的,flash的動畫基於幀、時間軸等概念,而flex的動畫則基於flex內部的特效,使用麻煩而且有時候還達不到想要的效果。筆者試過在flex中使用flash同樣的指令碼建立乙個跑馬燈動畫,居然能把程式卡死~

下面結合專案中的實際例子講一下flash和flex結合製作動畫的方法,在flash中製作一些動畫作為flex的元件,然後在flex中像普通元件一樣隨意使用。

首先描述下本功能,在程式中彈出乙個類似桌面歌詞的牌子,牌子裡滾動的顯示一些重要的業務資訊,點選某個資訊能在地圖中定位該資訊宿主的位置。

1.flash製作swc包

首先看一下它們之間的區別:

flex中的架構,(舉例uicomponent類的繼承關係)

uicomponent > flexsprite> sprite >displayobjectcontainer>interactiveobject >displayobject

flash中的架構(sprite類的繼承關係)

sprite >displayobjectcontainer>interactiveobject >displayobject

flex中的uimovieclip類繼承於uicomponent ,flash中的movieclip繼承於sprite,

flash中直接匯出swc,swc中的元件屬於movieclip,而在flex中不能在現實物件中直接新增沒有iuicomponent介面的類物件,所以不能使用.

我們通過adobe官方的外掛程式flex component kit 讓flash編譯器把movieclip轉換成uimovieclip。

在flash中製作好元件,然後右鍵點匯出swc檔案。

匯出成功之後再檢視該元件的屬性,可以看到這時該元件的基類已經變成了 mx.flash.uimovieclip

實際上,在我的例子裡只是做了乙個空的元件(作為顯示內容的容器),然後匯出swc檔案,為的是能用flash的框架來實現flex裡不容易而flash輕而易舉就能實現的動畫,看稍後的**部分就會明白~

2.flex中使用匯出的swc檔案

在flex工程中引用剛才生成的wsc檔案,下面直接貼**~~

<?xml version="1.0" encoding="utf-8"?>

" width="400"   height="30" backgroundalpha="0" horizontalscrollpolicy="off" creationcomplete="init()" xmlns:local="*">

//初始化把顯示內容加入廣告容器

private function init():void

}private function onmouseover(e:mouseevent):void

private function onmouseout(e:mouseevent):void

private function onenterframe(e:event):void}}

//地圖定位操作

private function ondbclick(e:mouseevent):void

]]>

ad3 就是剛才匯出來的swc裡的元件

-->

在這裡,我們可以在flex中通過程式控制動畫的方向、速度、文字的顏色、大小等等  還可以用flex訪問資料庫更便捷的特點 從webservice或httpservice等獲取要顯示的內容。下面貼兩張圖~~

結語:或許通過flash直接做成乙個可訪問外部資料和可配置的swf動畫,然後在flex中使用更簡單,不過筆者在使用過程中總感覺flash對外部資料的操作總是感覺有些麻煩~  應該是不熟悉flash的原因~

利用SandCastle製作類似MSDN的幫助

因為需要生成公司公用類庫的幫助文件,這幾天來,我一直在研究sandcastle,現在把我使用的心得說一下,權當記錄,留作以後查閱方便.在使用sh中有一些細節需要注意 1 使用sh之前需要確認已經安裝sandcastle和html help workshop 2 html help workshop的...

實現類似launcher的滑動桌面

這個例子中涉及到了以下幾個知識點 接下來說一下我實現的 思路 2 由於要實現隨手勢滑動,所以只要實現gesturedetector.ongesturelistener介面中的ondown onscroll 方法就可以 3 由於要接收觸屏事件,所以要實現ontouchevent 接下來我們來看一下 吧...

windows桌面製作notebook快捷方式

在cmd命令列中使用以下命令執行jupyter jupyter notebook 每次操作都要切入cmd再輸入命令,作為程式設計師,這樣是不是太繁瑣了 下邊我教大家在電腦上做個快捷圖示 1.在桌面上新建乙個 啟動notebook的 txt檔案,在修改字尾 notebook.bat 2.用notepa...