之所以是番外篇,是因為這篇不是用silverlight來寫的。是1年前的flashBuilder畢業設計制作間隙中的娛樂解悶產物,一年沒見它了,今天無意中看到,回憶起當年在朋友面前炫耀的場景,被時間吞噬有點太可惜了,我決定分享一下,有這樣需求的人也可以參考學習移植到silverlight上。
由於1年間經歷了各種人生的轉折點、技術方向的轉折點、操作系統的轉折點,Flex的那套已經忘記的差不多了,就不做任何技術分析了,僅供娛樂~現在用silverlight來做這個相信對於大家伙都不是什么難事。
為了能把它發到silverlight板塊,並且和Blend扯上關系,我特地研究了如何在silverlight中嵌入flash...o(∩_∩)o 哈哈
http://space.silverlightchina.net/ltt147/blackBoard/Default.html
1.所用工具
Flash Builder :主程序
Photoshop cs5:所有看到的都是我畫的(做所有要用到的素材)
Flash Professional CS5:鼠標的動畫效果(第一次用,之前只用過premiere,還是有點不習慣)
Flash Catalyst CS5:按鈕的樣式設計
Blend:寫了幾句嵌入flash的XAML代碼(我X嘞~主次不分嘛...)
2.嵌入方法
這里要用到一個動態庫,到http://www.divelements.co.uk/silverlight/tools.aspx下載Download Silverlight Tools 1.0.2。
然后添加Divelements.SilverlightTools.DLL引用進工程。
MainPage.Xaml:
<UserControl
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
x:Class="blackB.MainPage"
xmlns:divtools="clr-namespace:Divelements.SilverlightTools;assembly=Divelements.SilverlightTools"
Width="900" Height="530">
<Grid x:Name="LayoutRoot" Background="White" >
<divtools:HtmlHost Name="htmlHost" SourceUri="http://space.silverlightchina.net/ltt147/blackBoard/flash/Main.swf" />
</Grid>
</UserControl>
F5,就出現了喲~
其實SourceUri也可以用相對地址,不過注意是相對於服務器網站根目錄的地址,當然本人喜歡直接點~SourceUri的內容也可以為html哦,反正個人感覺就是個ifame。不會webQQ就用的這個吧??
還有一點需要設置就是對於加載.Xap的頁面需要加入如下項,綠色字體
<div id="silverlightControlHost">
<object data="data:application/x-silverlight-2," type="application/x-silverlight-2" width="100%" height="100%">
<param name="source" value="ClientBin/blackB.xap"/>
<param name="onerror" value="onSilverlightError" />
<param name="background" value="white" />
<param name="minRuntimeVersion" value="4.0.50826.0" />
<param name="autoUpgrade" value="true" />
<param name="windowless" value="true" />
<a href="http://go.microsoft.com/fwlink/?LinkID=149156&v=4.0.50826.0" style="text-decoration: none;">
<img src="http://go.microsoft.com/fwlink/?LinkID=161376" alt="獲取 Microsoft Silverlight" style="border-style: none"/>
</a>
</object><iframe id='_sl_historyFrame' style='visibility:hidden;height:0;width:0;border:0px'></iframe></div>
經過測試即使不加也可以正常加載,只是會彈出個對話框“windowless必須為true”當然是用英語說的了...除了這個對話框本人至今沒找出加和不加有什么區別...
嵌入方法的參考文章:http://www.cnblogs.com/Kinglee/archive/2009/10/20/1587113.html
3.成果展示
作品UI有點不一樣是因為是我在制作過程中就安奈不住基情所畫的~~
好吧我承認這一篇有點渾水摸魚的味道,各位看官對於番外篇就不要見怪了啊~~我們要抱着對於美工的熱愛和通用性來看待它~~而且實戰中不乏這種情況的出現。
同樣附上源碼:有愛好的人,想要里面的素材,flash鼠標樣式的都可以研究一下
http://files.cnblogs.com/tong-tong/%E5%B0%8F%E9%BB%91%E6%9D%BF.rar