Silverlight 解謎游戲 之四 粒子特效

? 前幾篇一直在Blend中工作沒體現出開發者的作用,本篇將為訂書器(Stapler)添加自定義粒子效果,當訂書器被點擊時產生更好的視覺效果。其中將使用到nerdplusart?的Silverlight Particle Generator?粒子特效工具。

在結束本章內容后,點擊Stapler 和Candies 將達到以下效果:

Get Microsoft Silverlight

?

?

1. 在Projects面板中新增Interactivity?文件夾,再為Interactivity 新增ParticlesBehavior?子文件夾:

folder

2. 右鍵ParticlesBehavior文件夾->Add New Item->Behavior,添加ParticlesBehavior

newitem

itemlist

3.?下載Silverlight Particle Generator 源代碼,將代碼中的ParticleControl.xaml?和ParticleControl.xaml.cs?文件加入(Add Existing Item)到ParticlesBehavior 文件夾:

file

4. 右鍵項目點擊“Edit in Visual Studio”,對PaticlesBehavior.cs進行編輯來跟蹤鼠標移動位置。將ParticlesBehavior 類聲明改為Behavior<Canvas>,通過修改后AssociatedObject 類型將成為Canvas。在OnAttached 和OnDetaching 方法中分別添加和刪除MouseMove 事件,當鼠標移動時便可記錄下當前鼠標位置:

public class ParticlesBehavior : Behavior<Canvas>
{private Point currentMousePosition;public ParticlesBehavior(){this.ShowParticles = new ActionCommand(this.OnShowParticles);}protected override void OnAttached(){base.OnAttached();AssociatedObject.MouseMove += new MouseEventHandler(AssociatedObject_MouseMove);}protected override void OnDetaching(){base.OnDetaching();AssociatedObject.MouseMove -= new MouseEventHandler(AssociatedObject_MouseMove);}void AssociatedObject_MouseMove(object sender, MouseEventArgs e){currentMousePosition = e.GetPosition(null);}public ICommand ShowParticles{get;private set;}private void OnShowParticles(){ParticleControl p = new ParticleControl();p.OffsetX = currentMousePosition.X;p.OffsetY = currentMousePosition.Y;AssociatedObject.Children.Add(p);}
}

?

5. VS里編譯后回到Blend,在Assets->Behavior 中將會看到ParticlesBehavior 選項,將ParticlesBehavior 加入LayoutRoot中:

beh

點擊Triggers右側的“+”按鈕添加新EventTrigger;點擊EventTrigger將SourceName設為staplerPath,EventName設為MouseLeftButtonDown;再次點擊“+”為可為其他物品添加ParticlesBehavior特效。另,在ParticlesBehavior.cs中增加一些代碼,便可出現下圖中Particles Properties設置窗口(詳情可下載源代碼):

setting

6. 在Blend中F5,點擊圖片中的訂書器(Stapler)便會出現粒子效果(但其不會自動消失),再點擊Candies也會出現粒子效果,問題是所有的粒子效果仍然不能消失。打開ParticleControl.xaml.cs 進行編輯:??
??? a. 在ParticleControl 類中定義int?型totalParticlesCreated?
??? b. 將this.particles.Count?替換為totalParticlesCreated??
??? c. 在SpawnParticle方法最后添加totalParticlesCreated++?
至此粒子效果就會自動消失了。

?

7. 最后為staplerPath添加RemoveElementAction,目的是為了每個物品只能點擊一次:

remove

removelist

將SourceName 和TargetName 都設置為staplerPath,EventName依然為MouseLeftButtonDown:

removetrigger

源代碼下載:





本文轉自Gnie博客園博客,原文鏈接:http://www.cnblogs.com/gnielee/archive/2010/01/02/silverlight-puzzle-game-part4.html,如需轉載請自行聯系原作者

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/278830.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/278830.shtml
英文地址,請注明出處:http://en.pswp.cn/news/278830.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

CS229 1 .線性回歸與特征歸一化(feature scaling)

線性回歸是一種回歸分析技術&#xff0c;回歸分析本質上就是一個函數估計的問題&#xff08;函數估計包括參數估計和非參數估計&#xff09;&#xff0c;就是找出因變量和自變量之間的因果關系。回歸分析的因變量是應該是連續變量&#xff0c;若因變量為離散變量&#xff0c;則…

注冊表被黑客篡改 怎樣修復_使用快速注冊表黑客設置Office 2007配色方案

注冊表被黑客篡改 怎樣修復We’ve written previously about how to set the Office 2007 color scheme away from that awful default blue, but you can also set it with a quick registry hack or even via group policy on your network, so we’ll cover that here. 前面…

共享計算機后無法訪問磁盤,win10電腦共享硬盤無法訪問如何解決

很多用戶為了方便文件的傳輸和訪問&#xff0c;就會在局域網中開啟硬盤共享&#xff0c;正常是可以通過網絡打開訪問該用戶計算機的磁盤從而讀取數據文件&#xff0c;可是有win10系統用戶卻發現共享硬盤無法訪問&#xff0c;武大直接通過網絡打開對方的磁盤&#xff0c;該如何處…

mikadonic-iptables學習筆記

firewall圖像化配置[rootdesktop0 ~]# firewall-config iptabes -Fiptabes -Xiptabes -Z先設置默認規則&#xff08;最后防線&#xff09;[rootdesktop0 ~]# iptables -P INPUT DROP&&iptables -P OUTPUT DROP&&iptables -P FORWARD DROP iptables -A&#xf…

如何組合救援磁盤以創建最終Windows修復磁盤

We’ve covered loads of different anti-virus, Linux, and other boot disks that help you repair or recover your system, but why limit yourself to just one? Here’s how to combine your favorite repair disks together to create the ultimate repair toolkit for…

WebService C#開發/調用

簡單描述C#開發WebService操作步驟以及調用方式 WebService開發 第一步&#xff1a;創建Web空項目 第二步&#xff1a;為創建的Web空項目添加Web服務 第三步&#xff1a;實現WebService方法(僅供參考) 運行WebService測試 第一步&#xff1a;運行WebService程序&#xff0c;略 …

南京鐵道學院計算機應用,南京鐵道職業技術學院交通運營管理專業怎么樣

開設課程&#xff1a;大學英語、高等數學、計算機應用、交通運輸學、國際貿易政策與實務、班輪租船業務、運籌學、城市軌道運營管理、交通運輸規劃原理、交通運輸信息技術、運輸市場營銷學、鐵路貨運組織管理、航空運輸業務、集裝箱運輸管理、港航商務管理、交通運輸專業英語、…

C語言第九次博客作業--指針

一、PTA實驗作業 題目1&#xff1a;兩個4位正整數的后兩位互換 1. 本題PTA提交列表 2. 設計思路 定義循環變量i,兩個數組a[4],b[4] for i0 to 3a[i]*p取各個位*p/10 end for i0 to 3b[i]*q取各個位*q/10 end 分別對*p和*q重新賦值 3.代碼截圖 4.本題調試過程碰到問題及PTA提交列…

使用CEOP增強的Internet Explorer 8幫助保護您的孩子

Do you want to make Internet Explorer safer and more helpful for you and family? Then join us as we look at the CEOP (Child Exploitation and Online Protection Centre) enhanced version of Internet Explorer 8. 您想使Internet Explorer對您和家人更安全&#xf…

如何保持進步

文章&#xff1a;今日頭條 CEO 張一鳴&#xff1a;面試了 2000 個年輕人&#xff0c;混得好的都有這 5 種特質轉載于:https://www.cnblogs.com/Tpf386/p/10033670.html

MAC--PPTP教程

第一步點擊DocK-系統設置 第二步點擊網絡&#xff0c;進入網絡設置 第三步點擊號-創建新服務&#xff0c;創建新的網絡連接 第四步接口-選-類型-選-PPTP服務名稱-選-然后點擊-創建 第五步進入設置頁面-服務器地址點擊查看虛擬IP列表賬戶名稱-輸入試用帳號或是你已充值開通的帳號…

2015計算機應用基礎平時作業答案,2015秋《計算機應用基礎》第一次作業

2015秋《計算機應用基礎》第一次作業 一、單項選擇題。本大題共50個小題&#xff0c;每小題 2.0 分&#xff0c;共100.0分。在每小題給出的選項中&#xff0c;只有一項是符合題目要求的。 1. 第一臺電子計算機是1946年在美國研制成功的&#xff0c;該機的英文縮寫名是______。 …

頁面置換算法及例題

一、頁面置換算法 不適當的算法可能會導致進程發生“抖動”&#xff1a;即剛被換出的頁很快又要被訪問&#xff0c;需要將他重新調入&#xff0c;此時又需要再選一頁調出。而此剛被調出的頁面很快又被訪問&#xff0c;又需將它調入&#xff0c;如此頻繁地更換頁面&#xff0c;以…

vista磁盤使用100%_如何在Windows 7或Vista中創建和使用密碼重置磁盤

vista磁盤使用100%Forgetting your password can be an extremely frustrating situation, and we’ve already shared how to reset your password with the Ultimate Boot CD as well as the System Rescue CD, but you can prevent the situation entirely by creating a pa…

Nginx服務狀態的監控

一、安裝Nginx 使用源碼編譯安裝&#xff0c;包括具體的編譯參數信息。 正式開始前&#xff0c;編譯環境gcc g 開發庫之類的需要提前裝好。 安裝make&#xff1a; yum -y install gcc automake autoconf libtool make 安裝g: yum install gcc gcc-c 一般我們都需要先裝pcre, zl…

計算機二級高級應用這么難,計算機二級考試越來越難的實錘!真實數據告訴你到底難在哪里?...

今年3月考試成績暫時未公布(預計在5月中旬發布)&#xff0c;通過率暫時無法得知。但是根據考后后臺反饋情況&#xff0c;今年通過率可能再創新低。不管你是不是有感知&#xff0c;計算機二級通過率的確在逐年降低。近3年難度越來越大每次考試結束后后臺評論最多的就是“今年的考…

windows 系統監視器_使用Windows 7中的可靠性監視器對計算機問題進行故障排除

windows 系統監視器Windows Vista introduced us to the Reliability and Performance Monitor utility to help keep track of hardware and software crashes. It’s now a stand alone utility in Windows 7 and we will take a look at how to access and use it. Windows …

4-8 string

1、常用的string模塊 1 import string2 3 # 26個小寫字母4 print(string.ascii_lowercase) 5 # abcdefghijklmnopqrstuvwxyz6 7 # 26個大寫字母8 print(string.ascii_uppercase) 9 # ABCDEFGHIJKLMNOPQRSTUVWXYZ 10 11 # 10個數字 12 print(string.digits) # 0123456789 1…

powerpoint預覽_如何安排PowerPoint幻燈片的時間以進行更有效的演示

powerpoint預覽Delivering a presentation is not just about giving good slides, it is also about making sure that our presentation finishes by the time our audience wants to have their tea break—so practicing how long to speak for each slide is essential fo…

【小程序踩坑系列5】小程序內多重調用原生promise,無返回,無報錯,代碼卡住...

作者: 蔣歡 問題&#xff1a; 在部分IOS機型上&#xff0c;小程序內使用原生promise實現異步&#xff0c;在嵌套四層后&#xff0c;Promise的resolve和reject均無返回。 環境&#xff1a; 用戶機型&#xff1a;iPhone 7 系統版本&#xff1a;IOS 10.3.3 微信版本&#xff1a;6.…