程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> WPF仿三星手機充電界面完成代碼

WPF仿三星手機充電界面完成代碼

編輯:C#入門知識

WPF仿三星手機充電界面完成代碼。本站提示廣大學習愛好者:(WPF仿三星手機充電界面完成代碼)文章只能為提供參考,不一定能成為您想要的結果。以下是WPF仿三星手機充電界面完成代碼正文


先上後果圖

這個後果來自於三星S5的充電界面,固然有些細節差異,重要看思緒.本文目標是技巧交換,不要將後果直接應用於貿易產物和項目.

電池配景

由於電池外部有好幾個部門,所以本例用了一個Grid來做配景,用Clip屬性剪切出一個電池的輪廓,如許不只顯示出一個電池的輪廓,還可以免水波和藹泡跑顯示Grid的裡面.

Clip的外部,是一個Path外形.詳細畫法就不多說了,之前寫過.有興致的同窗看這裡:http://www.cnblogs.com/tsliwei/p/5609035.html

表現電量的液體後果

全部液體分兩部門,下面是海浪,上面是矩形.進度值現實掌握的是矩形的高度.兩個控件放到StackPanel中,讓上面的矩形往上頂.最初給海浪底部Margin值為-1,使其看起來沒有間隙.

海浪是用貝塞爾曲線完成的,起首引見下貝塞爾曲線

貝塞爾曲線有4個點,終點起點和兩個掌握點.(此括號裡的可以不看:上丹青的其實不精確,由於掌握點其實不必定在曲線上).經由過程兩個掌握點決議曲線的途徑.

明顯上圖這自己就是個海浪形.應用點動畫PointAnimation掌握兩個點高低活動就有了海浪的靜態後果.留意兩個動畫時光不要一樣,不然看起來動畫太假.兩個時光錯開一點點就行了.

海浪部門寬度是50,高度是5

氣泡後果

這裡的氣泡後果就是個典范的粒子後果,並且是最簡略的那種,其實不觸及到甚麼龐雜的公式盤算.

簡略引見下道理:這裡的氣泡可以算作是圓依照必定的速度赓續的上升(轉變Y軸坐標).所以劃定一個速度,劃定一個間隔,應用幀動畫CompositionTarget.Rendering,在每幀都在Y軸上加這個速度在一幀挪動的間隔.然後斷定又沒到達劃定的間隔.假如到達,移除這個圓圈,不然持續上升.

氣泡可以分紅三個部門:

1.電池外部的氣泡.年夜小適中,挪動速度最慢,挪動間隔最短.

2.屏幕底部的年夜氣泡,個頭比擬年夜,挪動速度較慢,挪動間隔較短.

3.屏幕底部的吝啬泡,個頭最小,挪動速度較快,挪動間隔較遠.

新建一個Class,用來表現氣泡信息

個中兩個主要屬性,一個是速度,一個是氣泡須要挪動的間隔.這兩個屬性決議了氣泡的活動軌跡.第三個屬性是用來斷定氣泡是否是完成了任務,第四個屬性是添加一個對氣泡的援用,如許便利在後台掌握氣泡.

界說三個聚集,用來寄存三部門的氣泡信息.

在幀襯著事宜內,遍歷三個聚集.讓聚集裡的每一個氣泡都向上挪動(Canvas.SetTop),斷定氣泡是否是曾經挪動了指定的間隔,是的話就在頁面移除氣泡,聚集也移除該氣泡信息.斷定聚集的Count是否是小於劃定個個數,假如小於,就向頁面添加氣泡,聚集添加氣泡信息.

畫氣泡

為了雅觀,我本身畫了個氣泡的模子,用在了年夜氣泡上.吝啬泡直接用的橢圓,由於即便用模子,由於太小,也看不出來.現實上年夜氣泡也不怎樣看得出來.不外既然寫了,照樣引見下吧.畫的其實不是很悅目.還請見諒.

起首這個氣泡就是個ViewBox.便利縮放.

輪廓是個正圓,Fill給了個突變畫刷,向外赓續加深,在最外圈0.85-1的部門是最深的.三個點的R都是20,B都是10,綠色部門G順次減小,分離是240,150,100.

右下邊的新月是個Path,給了個半徑是10的隱約後果.Fill是半通明的白色.新月的畫法就是兩個弧線,終點和起點雷同,半徑分歧.

左上角的亮點就是兩個橢圓,和新月一樣.半徑是10的隱約後果.Fill是半通明的白色.

源碼下載:三星手電機池充電後果.rar

以上就是本文的全體內容,願望對年夜家的進修有所贊助,也願望年夜家多多支撐。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved