2012-06-27 51 views
0

我正在開發一種類似於metro風格的應用程序。我想應用橡皮擦功能。那麼如何才能製作出這樣的工具來擦除畫布上的內容,就像我們在MS繪畫中所做的一樣?從鼠標拖動的畫布中刪除內容

我不想清除整個畫布,無論我點擊或拖動指針,指針所走過的路徑都應該被擦除。

+1

在MS Paint中擦除時,例如紅色的矩形它實際上描繪了你的想法擦去白色的區域。你也可以做同樣的工作 – HatSoft

+0

,但我可以在地鐵風格的應用程序中做到這一點?使用哪種方法? 我知道MS油漆橡皮背後的邏輯。我也嘗試用白色繪製已繪製的對象,但對象保持原樣。 – Xyroid

+0

是應用程序白色的背景嗎? –

回答

1

重要的是要記住的是,你不是「擦除」。您在鼠標行進過的區域上繪製像素很小。有100種不同的方法可以做到這一點,但是沒有任何內容可以使這一點變得簡單。

您可能需要檢測鼠標(或手指)接觸的每個像素(或任何您選擇的度量單位),並將白色Rectangle控件放置在已經繪製到頁面上的任何其他位置。

這主要是一個管理大量Rectangle對象集合並在適當的時候改變顏色的遊戲。如果您試圖擦除較大矩形的一部分,則應重新考慮您的方法。