看板 C_Sharp 關於我們 聯絡資訊
我想在OnMouseMove的時候能夠產生拖曳圓形的樣子 protected override void OnMouseMove(MouseEventArgs e) { g.Clear(Color.whilte); g.DrawEllipse(................); } 這樣一來就可以成功有拖曳圓形變大變小的感覺了 可是在畫下一個圓形時會碰到g.Clear(Color.whilte);的影響 造成上一次畫的圓形會消失... 有沒有辦法讓所有的圖形留在graphics上 而且也要有拖曳的效果? 如果使用 g.DrawEllipse(new Pen(Color.White,5), ............); g.DrawEllipse(new Pen(ForeColor,5), ...............); 在畫下一個圓時 把上一個圓清除 好像可以達成這個效果 可是如果兩個圓有接觸時 前一個圓某部份會變白色....= =" 不知道有沒有辦法解決~~~謝謝!! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 59.116.164.3
FantasyRyu:你講的是Layer的概念。把Layer建成Object就解決了。 11/01 20:41
pokia:可以麻煩樓上的大大再說明一下嗎??我有點不太清楚 11/02 00:19
FantasyRyu:這是圖層的概念,請把每一層建成物件方便重繪 11/02 12:26
FantasyRyu:如果不想加上Undo功能,就把畫過的層統統建成一堆就好 11/02 15:35