7
A
回答
4
要做到這一點,你需要看看自己的位圖。 WPF的命中測試機制認爲即使看不見,仍然可以點擊「透明」畫筆繪製的任何像素。這通常是一件好事,但阻礙了你想要做的事情。因爲.png是用透明畫筆繪製的,所以整個.png在進行命中測試時被認爲是繪製的。
你需要在你MouseMove
事件處理程序做的是:
- 來吧,調用擊中測試正常方式。
- 對於每個
HitTestResult
你回來,檢查,看它是否是一個Image
如果是這樣,一個透明的像素是否是鼠標下 - 當你得到一個非圖像或不透明像素上一炮打響一個圖像,停下來。
- 決定基於一個
Cursor
值鼠標是什麼超過
要確定鼠標是否已經過去的圖像的透明像素:
- 獲取相對於圖像鼠標位置(
e.GetPosition(image)
) - 如果您使用拉伸:在這一點上,你必須回計算拉伸得到一個位圖索引
- 使用
BitmapSource.CopyPixels
複製1個像素的直腸進入數組(即。只有單個像素的鼠標懸停) - 檢查被檢索看到的像素值,如果它是一個透明像素
相關問題
- 1. 從圖像創建半透明光標
- 2. Windows窗體:使光標位圖部分透明
- 3. 使圖像的一部分透明
- 4. 映射圖像的不透明部分
- 5. imagecopymerge不與部分透明的圖像
- 6. javafx中的部分透明圖像
- 7. 使圖像的一部分透明
- 8. 半透明光標
- 9. pyGObject透明光標
- 10. PyQt透明背景圖像部分黑
- 11. 透明部分的視圖?
- 12. 忽略qgraphicsview中svg圖像透明部分的鼠標事件?
- 13. 捕捉UIScrollView的可見部分後圖像的透明部分
- 14. 在ImageView中的不透明圖像上的透明圖像
- 15. 透明WPF按鈕的外部和內部發光
- 16. ImageMagick:在圖像上放置部分透明的瓷磚
- 17. WPF中圖像的不透明度
- 18. 透明背景上的圖標和元素部分邊框
- 19. 透明圖像搞亂透明圖像
- 20. CSS光標:它可以是一個半透明的圖像
- 21. 在另一個透明圖像上移動透明圖像
- 22. 構建輪流部分透明的圖像像素黑色
- 23. 試圖改變圖像中的透明部分的顏色
- 24. 透明圖像
- 25. 如何隱藏透明WPF窗口中的光標?
- 26. 模糊或透明的圖像底部
- 27. JFrame部分透明
- 28. UIbutton部分透明?
- 29. 圖標圖像 - 透明度問題
- 30. 透明表格上的透明標籤
這是一個很值得我所做的和出色的作品。 – TWith2Sugars 2010-02-13 15:30:57