2016年2月12日 星期五

[螢幕攝]自己的捷徑自己寫!

各位新年快樂!
今天要講的是如何寫出Rainmeter上的捷徑小工具
就像這樣






很多個併起來的這樣


直接先貼上原始碼,再來接著介紹!



;=====================================================================

[folder]
Meter=Image
ImageName=C.png
W=80
H=80
X=0
Y=0
LeftMouseUpAction=!Execute ["C:\"]
MouseActionCursor=1
MouseOverAction=!Execute [!RainmeterShowMeter cover][!RainmeterRedraw]
MouseLeaveAction=!Execute [!RainmeterHideMeter cover][!RainmeterRedraw]

[cover]
Meter=Image
X=5
Y=25
W=70
H=40
SolidColor=255,255,255,40
Hidden=1


首先呢,兩個中括號裡面的是你要為這個"東西"取的名字,也就是Meter的名字

在Rainmeter裡面,所有一切你看的到的東西都叫做Meter。
舉凡圖片文字按鈕會動的不會動的通通都是Meter
在這個工具中,我為我的捷徑宣告了兩個Meter
一個是folder,也就是捷徑的框框以及捷徑的名稱
這是一張我自己做的png圖檔,文字的部分是白色的且背景色透明所以在白色背景下可能不是那麼顯眼



我利用這張圖檔作為我的捷徑,所以我的Meter要宣告他是Image,也就是圖像
接著,我必須告訴Rainmeter我圖片的來源是甚麼,也就是圖片的路徑"C.png"
Rainmeter會自動去找到放在跟程式碼同一個資料夾內叫做"C.png"的東西
如果你想通通放在另一個資料夾內的話,路徑前面直接加上"\資料夾\圖檔.png"就可以了

接著必須詳細說明這個Meter的XY座標
如果不告訴Rainmerter長寬該給多少的話,Meter會直接呈現失蹤狀態,因為預設值都是0
Rainmeter的長寬W、H還有X、Y座標的判斷實在很差,所以常常必須得自己去慢慢調整大小以及位置......

接下來我想要讓我的滑鼠對著捷徑點擊一下左鍵就開啟路徑的來源
所以我用到"LeftMouseUpAction
嚴格來說,並不是點擊一下左鍵,而是"當放開左鍵時做某動作
當我按下左鍵的時候,並不會有動作,當我放開左鍵之後,執行後面敘述的動作
"執行"這個路徑"C:\"
這樣就會打開C槽了!
這裡再補上一行"MouseActionCursor"讓游標移動過去時,會從箭頭變成可點選的手指
告訴使用者"這裡可以點唷!"



folder的最後兩行先不看,我們再來看Cover

也就是給folder一個"遮罩",當游標在folder上時,會出現一個方形的遮罩
讓可點選的視覺可加明顯,使用者也可以更清楚知道自己游標已經準確滑到捷徑上了

cover的作法非常簡單

先新增一個Meter
並且宣告他是一個Image圖像
接著說明長寬及座標
這裡必須要讓cover覆蓋在folder上,前面也說過了Rainmeter的這部分非常難搞,所以各位只好自己手動調整數值了
然後再給cover一個顏色,可以搭配自己的桌布或是設計的主題來分配顏色
顏色的寫法是RGB色碼,也就是三原色,最後一個數值是指透明度
對於我們的工具來說,cover只是一個遮罩,所以我希望他是透明的,不那麼搶眼的
所以我給了數值40(越低越透明)
最後,我的cover必須是在游標移動到捷徑上時才要出現,所以預設必須是隱藏起來
hidden=1是隱藏  預設是0,顯示的狀態

讓我們回到folder完成最後一步吧!

我希望我的游標移動到folder讓我的cover出現,離開時讓我的cover消失
所以我要在folder裡增加兩個動作,出現以及消失
MouseOverAction:當滑鼠經過時要做的動作
MouseLeaveAction:當滑鼠離開時要做的動作
動作的內容是讓"Rainmeter"顯示"Show"出我的Meter"cover
以及
讓"Rainmeter"隱藏"Hide"我的Meter"cover
最後,因為Rainmeter並不是隨時隨地都在更新畫面,跑動畫的
工具本身是有自己的更新頻率的,所以必須要讓"Rainmeter"重新繪圖"Redraw
否則cover的顯示和隱藏不能夠即時跟游標同步,導致畫面不協調

到這裡我們的捷徑就完成囉!

如果想要讓工具有多個捷徑,只需要讓folder和cover有不同的名字就可以囉!
例如:folder1, folder2, folder3....等等

此文同步發表在KnowNeko知識貓
貓的wordpress中

沒有留言:

張貼留言